当增加被测功能和相应的测试用例之后unittest单元测试框架如何扩展和组织新增的测试用例的。

 1 # coding =utf-8
 2 # calculator
 3
 4 class Count ():
 5     def __init__(self, a, b):
 6         self.a = int (a)
 7         self.b = int (b)
 8
 9     def add(self):
10         return self.a + self.b
11
12     def sub(self):
13         return self.a - self.b

 1 import unittest
 2 from calculator import Count
 3
 4
 5 class TestAdd (unittest.TestCase):
 6     def setUp(self):
 7         print("加法测试开始")
 8
 9     def test_add(self):
10         j = Count(2, 3)
11         self.assertEqual (j.add (), 4, msg='加法不行等')
12
13     def test_add2(self):
14         j = Count(2, 4)
15         self.assertEqual (j.add (), 5, msg='加法不行等')
16
17     def tearDown(self):
18         print("加法测试结束")
19
20
21 class TestSub (unittest.TestCase):
22     def setup(self):
23         print("减法测试开始")
24
25     def test_sub(self):
26         j = Count(10, 3)
27         self.assertEqual (j.sub (), 18, msg='键法不行等')
28
29     def test_sub2(self):
30         j = Count(10, 2)
31         self.assertEqual (j.sub (), 18, msg='键法不行等')
32
33     def tearDown(self):
34         print("减法测试结束")
35
36
37 if __name__ == '__main__':
38     suite = unittest.TestSuite ()
39     suite.addTest (TestAdd ('test_add'))
40     suite.addTest (TestAdd ('test_add2'))
41     suite.addTest (TestSub ('test_sub'))
42     suite.addTest (TestSub ('test_sub2'))
43     run = unittest.TextTestRunner ()
44     run.run (suite)

运行的结果如下:

上面中创建了TestAdd()和TestSub()两个类,分别测试calculator.py文件中的add()和sub()两个功能。通过TestSuite类的addTest()方法把不同测试类中的测试方法组装到测试套件中。

通过。

从测试结果可以看出,setUp()和tearDown()方法分别作用于每个测试用例的开始和结束。如果每个类中的setUp和tearDown()所做的事情是一样的,就可以将其封装再一个测试类中。

 1 import unittest
 2 from calculator import Count
 3
 4
 5 class MyTest (unittest.TestCase):
 6     def setUp(self):
 7         print("test case start")
 8
 9     def tearDown(self):
10         print("test case end")
11
12
13 class TestAdd (MyTest):
14     def test_add(self):
15         j = Count (2, 3)
16         self.assertEqual (j.add (), 5, msg='加法不行等')
17
18     def test_add2(self):
19         j = Count (2, 4)
20         self.assertEqual (j.add (), 6, msg='加法不行等')
21
22
23 class TestSub (MyTest):
24     def test_sub(self):
25         j = Count (10, 3)
26         self.assertEqual (j.sub (), 7, msg='键法不行等')
27
28
29     def test_sub2(self):
30         j = Count (10, 2)
31         self.assertEqual (j.sub (), 8, msg='键法不行等')
32
33
34 if __name__ == '__main__':
35     suite = unittest.TestSuite ()
36     suite.addTest (TestAdd ('test_add'))
37     suite.addTest (TestAdd ('test_add2'))
38     suite.addTest (TestSub ('test_sub'))
39     suite.addTest (TestSub ('test_sub2'))
40     run = unittest.TextTestRunner ()
41     run.run (suite)
42     # unittest.main()

创建MyTest()类的好处显而易见,对于测试类和测试方法来说,应将注意力放在具体用例的编写商,无需关心SetUp()和TearDown()所做的事情。前提条件是SetUp()和TearDown()所做的事情是每个用例都需要的。

转载于:https://www.cnblogs.com/fengyiru6369/p/7575101.html

Python + selenium之组织unittest单元测试用例相关推荐

  1. Python+Selenium 自动化测试 6. Unittest模块学习

    unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果. 源码例 ...

  2. Python +selenium+unittest+ddt数据化实现自动化运行和脚本并生成报告

    一.unittest 框架解析 unittest 是 python 的单元测试框架.unittest 单元测试提供了创建测试用例,测试套件以及批量执行的方案, unittest 在安装 pyhton ...

  3. python selenium unittest_python+selenium+unittest单元测试框架

    unittest简介 python自动化测试不得不提unittest,unittest原名为PyUnit是python自带的单元测试框架,类似于java的JUnit是有JUnit衍生而来. unitt ...

  4. 软件测试案例|Python+Selenium+unittest完成对登录页面的自动化测试

    软件测试案例:Python+Selenium+unittest完成对登录页面的自动化测试 01.实验简介 本实验使用Python语言结合Selenium UI测试工具,利用unittest组织测试用例 ...

  5. python+selenium自动化软件测试(第3章):unittest

    目录 3.1 unittest简介 3.1.1 unittest简介 3.1.2 简单用法 3.1.3 小试牛刀 3.1.4 前置和后置 3.1.5 博客案例 3.1.6 参考代码 3.2 unitt ...

  6. python+selenium+unittest自动化测试框架

    前言 关于自动化测试的介绍,网上已有很多资料,这里不再赘述,UI自动化测试是自动化测试的一种,也是测试金字塔最上面的一层,selenium是应用于web的自动化测试工具,支持多平台.多浏览器.多语言来 ...

  7. python+selenium+unittest+ddt参数化实现自动化运行和脚本并生成报告

    test fixture:初始化和清理测试环境,比如创建临时的数据库,文件和目录等,其中 setUp() 和 setDown() 是最常用的方法. test case:单元测试用例,TestCase ...

  8. Python + Selenium + UnitTest自动化测试面试题目整理

    1.如何使用Selenium进行自动化测试 ? 结合Python + Selenium + UnitTest 2.自动化测试框架 分层+PO模式: 包含基础封装层BasePage.PO页面对象层.Te ...

  9. python 自动化框架_学会Python+Selenium,分分钟搭建Web自动化框架!

    用python+selenium实现UI自动化测试,要有一些HTML和xpth的基础,当然python基础一定是必须要会的.笔者建议花点时间了解下相关基础知识,不至于后面发懵. 一.什么是seleni ...

  10. python selenium po_python+selenium基于po模式的web自动化测试框架

    一.什么是Selenium? Selenium是一个基于浏览器的自动化测试工具,它提供了一种跨平台.跨浏览器的端到端的web自动化解决方案.Selenium主要包括三部分:Selenium IDE.S ...

最新文章

  1. 埃斯顿机器人 王杰高_联盟新闻|中国机器人产业联盟召开机器人行业骨干企业专家视频研讨会...
  2. unable to execute clang-tidy
  3. Django之中间件
  4. java 基于tcp客户端服务端发送接收数据
  5. 【Java线程】多线程实现简单的一对一聊天
  6. Hashtable, ArrayList, List, Dictionary学习
  7. desc 枚举类型id_想让代码更优雅?Mybatis类型处理器了解一下!
  8. 惠普p1106打印机安装步骤_hplaserjetp1106打印机驱动安装说明
  9. 西门子S7-200SMART PLC视频教程(百度网盘)
  10. 智能网联汽车OTA升级安全设计
  11. IE主页被篡改了怎么办
  12. Java工程师的职业规划(最全版本)
  13. C# 简单判断枚举值是否被定义
  14. 长坡难滚“雪球”,零跑汽车上市只是一个 “开端”
  15. 前端如何实现即时通信?
  16. IPFS白皮书中文版
  17. 孕期饮食新理念——初光孕妇餐 让孕期营养更科学
  18. 鸿蒙大陆黑熊在哪,荒野大镖客2传说熊在哪捕获?传说熊捕获位置介绍
  19. Oracle RAC中的几个IP
  20. 浙江省计算机c语言考试,浙江省计算机二级c语言上机考试真题(三)程序编写

热门文章

  1. Python 学习入门(22)—— 线程同步
  2. 爬虫 - scrapy框架设置代理
  3. CC2640 LaunchPad入门试用-第一篇
  4. Java基础——泛型
  5. sql 在排序后limit 查询疑问
  6. AJAX用法、HTTP头部信息
  7. Redmine管理项目1-自定义属性
  8. 使用html和css的一些经验
  9. [CTO札记]社区领域模型-SRC抽象模型
  10. 协议 UDP、TCP UDP的接发数据的步骤