selenium之4 unittest 单元测试框架实战

4.1 单元测试
是指对软件中的最小可测试单元进行检查和验证。

单元就是人为规定的最小的被测功能模块。单元测试是在软件开发过程中要进行的最低级别的测试活动,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试

unittest 框架是 python的单元测试框架

unnitest = TestCase + TestResult 执行用例 + 结果

4.2 unittest

  • 用import语句引入unittest模块
  • 测试的类都继承于TestCase类
  • setUp() 测试前的初始化工作;tearDown()测试后的清除工作 (在每个测试方法运行时被调用)
  • 成功是输出 . 失败是 F

注意:
1、所有类中方法的入参为self,定义方法的变量也要“self.变量
2、定义测试用例,以“test”开头命名的方法,方法的入参为self
3、unittest.main()方法会搜索该模块下所有以test开头的测试用例方法,并自动执行它们
4、自己写的py文件不能,用 unittest.py 命名,不然会找不到TestCase

import unittest
class UserTestCase(unittest.TestCase):
    def setUp(self):
        print("setUP")
    def tearDown(self):
        print("tearDown")
    def test_name(self):
        print("test_name")
if __name__ == '__main__':
    unittest.main()

4.3 TestSuite

  • 利用unnitest执行流程测试而非单元测试

  • unittest.TestSuite() 类来表示一个测试用例集,用来确定测试用例的顺序,哪个先执行哪个后执行

    如果一个class中有四个test开头的方法,则加载到suite中时则有四个测试用例
    由TestLoder加载TestCase到TestSuite
    verbosity参数可以控制执行结果的输出,0 是简单报告、1 是一般报告、2 是详细报告
    默认1 会在每个成功的用例前面有个“.” 每个失败的用例前面有个 “F”

  • TextTestRunner() 文本测试用例运行器

  • run()方法是运行测试套件的测试用例,入参为suite测试套件

实例:

import unittest
class UserTestCase(unittest.TestCase):
    def setUp(self):
        self.name="username"
        self.password="userpwd"
        print("setUP")
    def tearDown(self):
        print("tearDown")
        self.assertEqual('foo'.upper(),'FOO')
    def test_name(self):
        print("测试用户名")
        self.assertEqual(self.name,"username",msg="用户名不正确")
    def test_password(self):
        print("测试密码")
        self.assertEqual(self.password,"userpwd",msg="密码不正确")
if __name__ == '__main__':
    suite=unittest.TestSuite()
    suite.addTest(UserTestCase("test_name"))
    suite.addTest(UserTestCase("test_password"))
    runner=unittest.TextTestRunner(verbosity=0)
    runner.run(suite)

4.4 测试套件TestSuite生成测试报告
HTMLTestRunner
HTMLTestRunner 是 Python 标准库的 unittest 模块的一个扩展,它可以生成 HTML的 测试报告,无法通过pip安装。

首先要下 HTMLTestRunner.py 文件,将下载的文件放入…\python\Lib目录下 (或者同个路径)

注意:python2和python3,语法不一样,导致HTMLTestRunner在python3不兼容
修改好的HTMLTestRunner.py 文件

实例:生成测试报告
生成测试报告代码

运行结果:
在这里插入图片描述
生成的报告:
在这里插入图片描述
如果测试完全正确
运行结果:
在这里插入图片描述
生成的报告:
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

uncle_Huang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值