unittest单元测试框架之unittest 框架的总结2(八)
unittest 下的属性
1.Unittest.TestCase:所有测试用例类继承的基本类
2.Unittest.main():将一个单元测试模块变为可直接运行的测试脚本
If __name__ == “__main__”:
Unittest.main()
3.Unittest.TestSuite:创建测试套件
4.unittest.TextTestRunner():unittest 框架的 TextTestRunner()类,通过该类下面的 run()方 法来运行 suite 所组装的测试用例,入参为 suite 测试套件。
5.unittest.defaultTestLoader(): defaultTestLoader()类,通过该类下面的 discover()方法可 自动根据测试目录 start_dir 匹配查找测试用例文件(test*.py),并将查找到的测试用例 组装到测试套件,因此可以直接通过 run()方法执行 discover
6.unittest.skip():跳过某条测试用例
7.TestCase 类的属性:
- setUp():setUp()方法用于测试用例执行前的初始化工作。如测试用例中需要访问数据 库,可以在 setUp 中建立数据库连接并进行初始化。如测试用例需要登录 web,可 以先实例化浏览器。
- tearDown():tearDown()方法用于测试用例执行之后的善后工作。如关闭数据库连接。 关闭浏览器。
- 断言方法:assert
8.TestSuite 类:把测试用例加载到测试套件中,常用方法是 addTest()与 addTests()
9.TextTestRunner():下 run 方法,执行测试套件中的测试用例。
案例:
test
from selenium import webdriver
import unittest
from time import sleep
class MsTest(unittest.TestCase):
# 初始化
def setUp(self): self.driver = webdriver.Firefox()
self.driver.implicitly_wait(10)
self.base_url = "http://localhost:8032/ms/admin.php/Index/index"
# 登录与退出
# 测试方法一定要以 test_开头
def test_Login(self):
driver = self.driver
driver.get(self.base_url) driver.find_element_by_xpath("//input[@id='username']").send_keys("admin") driver.find_element_by_xpath("//input[@id='password']").send_keys("admin")
driver.find_element_by_xpath("//button[@class='btn btn-default btnblock']").click()
sleep(4)
driver.find_element_by_xpath("//a[contains(.,'Hi, admin! ')]").click() driver.find_element_by_xpath("//a[@href='/ms/admin.php/Public/logout']").click()
def tearDown(self):
self.driver.quit()
if __name__ == "__main__":
unittest.main()
runtest
import unittest
from UnittestDemo.MSDemo.ms_test import MsTest
# 构建测试套件
suite = unittest.TestSuite()
suite.addTest(MsTest("test_Login"))
# 执行测试
if __name__ == "__main__":
runner = unittest.TextTestRunner()
runner.run(suite)
unittest单元测试框架之unittest 框架的总结2(八)的更多相关文章
- unittest单元测试框架总结
unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果.今天笔者 ...
- unittest单元测试框架详解
unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果.今天笔者 ...
- Selenium+Python ---- 免登录、等待、unittest单元测试框架、PO模型
1.免登录在进行测试的过程中难免会遇到登录的情况,给测试工作添加了工作量,本文仅提供一些思路供参考解决方式:手动请求中添加cookies.火狐的profile文件记录信息实现.人工介入.万能验证码.去 ...
- Selenium自动化测试-unittest单元测试框架
一.Pyhon工作原理-- 核心概念:test case, testsuite, TestLoder,TextTestRunner,TextTestResult, test fixture TestC ...
- unittest单元测试框架
unittest单元测试框架 概述: 单元测试框架主要用来完成以下三件事: 提供用例组织与执行:当测试用例只有几条时,可以不必考虑用例的组织,但是当用例达到成百上千条时,大量的用例堆砌在一起,就产生了 ...
- 【python接口自动化框架-unittest】【一】unittest单元测试框架概念
一.unittst单元测试框架 概念参考:https://docs.python.org/2/library/unittest.html 使用方法:import unittest (引入unittes ...
- Python单元测试unittest - 单元测试框架
一.unittest简介 unitest单元测试框架最初是有JUnit的启发,它支持测试自动化,共享测试的设置和关闭代码,将测试聚合到集合中,以及测试与报告框架的独立性. 二.unittest相关概念 ...
- unittest单元测试框架简单说明
unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果.今天笔者 ...
- Python+selenium之简单介绍unittest单元测试框架
Python+selenium之简单介绍unittest单元测试框架 一.unittest简单介绍 unittest支持测试自动化,共享测试用例中的初始化和关闭退出代码,在unittest中最小单元是 ...
- unittest单元测试框架总结(转载)
转载:https://www.cnblogs.com/yufeihlf/p/5707929.html unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该 ...
随机推荐
- IntelliJ IDEA 16创建Web项目
首先要理解一个概念:在IntelliJ IDEA中“new Project”相当于eclipse中的工作空间(Workspace),而“new Module”相当于eclipse中的工程(Projec ...
- Python OOP面向对象
一.什么是面向对象的程序设计 1.面向过程 程序设计:核心是过程二字,过程指的是解决问题的步骤,即先干什么再干什么......面向过程的设计就好比精心设计好一条流水线,是一种机械式的思维方式. 优点是 ...
- html 之 position用法
引用: position的四个属性值: 1.relative2.absolute3.fixed4.static下面分别讲述这四个属性. <div id="parent"> ...
- 点击空白处--某个div 消失
背景:1.需要在 easyui grid 的编辑框 获取焦点的时候,在正下方展示费用类型的网格 2.在点击费用类型网格以外的地方,该网格消失 思路: 一.用easyui 的panel 作为费用类型网格 ...
- 关于tr:hover变色的问题
最近在给table里面的tr标签添加高亮背景色显示的时候,遇到一个坑,HTML结构如下: <tr> <td></td> <td></td> ...
- 【One Day菜鸟到大鸟】MyBatis搭建环境
一.概述 MyBatis是一个持久化框架和Hiberante差不多.比起JDBC来说MyBatis封装了JDBC让我们能够面向对象开发.比起Hiberante来说卸下了Hiberante那种重 ...
- OA电子表单设计-年假申请单-数据验证
OA从年初上线到现在已经过去半年了,时光飞逝. 上月底,行政文员找到我,说最近有新来的部门文员填<年假申请单>时,有乱填的情况,让我想办法处理. 我一查还真是,这文员是个男的,同一天给同一 ...
- 如何在VS2010环境下编译C++程序
原文:http://blog.csdn.net/gupengnina/article/details/7441203 用 Visual Studio 编写 Visual C++ 程序的第一步是选择项目 ...
- 浅谈回归(二)——Regression 之历史错误翻译
我很好奇这个问题,于是搜了一下.我发现 Regression 这个词 本意里有"衰退"的意思. 词根词缀: re- 回 , 向后 + -gress- 步 , 级 + -ion 名词 ...
- python mysql安装
本文主要介绍不同系统mysql安装 mac安装mysql http://blog.csdn.net/pansanday/article/details/54915916 linux安装mysql ...