pytest 是python的第三方库,基于unittest扩展,可完全兼容unittest,支持插件扩展和失败用例重跑
1、pytest用例写法不同
unittest
(1)测试文件必须先import unittest
(2)测试类必须继承unittest.TestCase
(3)测试方法必须以“test_”开头
(4)测试类必须要有unittest.main()方法
pytest
(1)测试文件名必须以“test_”开头或者"test"结尾(如:test_ab.py)
(2)测试方法必须以“test”开头。
(3)测试类命名以"Test"开头
2、setup和teardown
pytest扩展了模块、函数、类、方法等级别
unittest仅支持所有用例
3、assert
pytest只使用assert
unittest使用需区分和细分assertTrue,assertFalse,assertEqual等
4、报告
unittest使用HTMLTestRunnerNew,pytest使用插件pytest-HTML
5、重跑和分类执行
pytest通过插件,可支持失败重跑和用例分类执行。unittest不支持