易妖游戏网
您的当前位置:首页unittest与pytest区别

unittest与pytest区别

来源:易妖游戏网

unittest与pytest区别

从以下几个方面来区分:

**1.**用例编写及规则
unittest
1.使用自定义测试类,必须继承 unittest.TestCase
2.TestSuite:测试套件,使用需声明:unittest.TestCase()
3.测试方法必须以test_开头
4.执行测试类必须有方法 unittest.main()
pytest
1.测试文件名必须以test_开头或者以_test结尾
2.测试方法必须以test_开头
3.测试类命名以Test开头

**2.**用例执行
unittest
默认执行所有的用例也可以通过testsuit,执行部分用例
pytest
通过@pytest.mark来标记方法和类,pytest.main加入参数(-m)可以只运行标记的类与方法

**3.**用例的前置与后置
unittest
提供了setup/teardown,只能针对所有的用例
pytest
pytest的fixture更加灵活,可以任意自定义方法函数,只要加上@pytest.fixture()装饰器,被装饰的方法就可以调用

**4.**参数化
unittest
需要依赖ddt库,进行数据驱动
pytest
直接使用@pytest.mark.paramtrize装饰器

**5.**断言
unittest
有很多断言格式(assertIn,assertEquarl,asser

因篇幅问题不能全部显示,请点此查看更多更全内容