美文网首页
unittest和pytest自动化测试框架对比

unittest和pytest自动化测试框架对比

作者: 凝芸冰诺 | 来源:发表于2022-08-03 11:06 被阅读0次

    基于python语言:unittest、pytest
    基于Java语言:junit、testng(Java的本次不做讲解)

    unittest、pytest框架区别

    1、用例编写规则
    unittest:提供了testcase测试用例,testsuites测试套件、testfixtrue测试固件或者夹具,testloader测试加载器,testrunner测试运行器。必须遵守以下原则:
    (1)测试文件必须先导入import uinttest
    (2)测试类必须继承unittest.TestCase
    (3)测试方法必须以test开头

    pytest:是python的第三方测试框架,基于unittest扩展框架,必须遵守以下规则:
    (1)测试文件必须以test_开头或者_test结尾
    (2)测试类必须以Test开头
    (3)测试方法必须以test开头
    2、用例的前置和后置
    unittest:
    setUp/tearDown :在每个用例之前和之后运行一次
    setUpClass/tearDownClass:在每个类之前和之后运行一次
    setUpModel/tearDownModel:在每个模块之前和之后运行一次

    pytest:
    方法级:
    setup_method/teardown_method 在方法之前和之后执行
    setup/teardown
    函数级:
    setup_function/teardown_function 在函数之前和之后执行
    或者在函数之前加上@pytest.fixture()
    类级:
    setup_class/teardown_class 在类之前和之后执行
    模块级:
    setup_module/teardown_module 在模块之前和之后执行
    3、断言
    unittest:assertTrue,assertEqual、assertIn
    pytest:assert
    4、报告
    unittest:htmltestrunner
    pytest:插件、pytest-HTML、allure
    5、失败重跑
    unittest:无
    pytest:pytest-rerunfailures插件
    6、数据驱动
    unittest:ddt
    pytest:@pytest.mark.parametrize装饰器
    7、用例分类执行
    unittest:默认执行所有用例,也可以通过testsuite来执行部分用例,或者加参数-k
    pytest:@pytest.mark

    相关文章

      网友评论

          本文标题:unittest和pytest自动化测试框架对比

          本文链接:https://www.haomeiwen.com/subject/wpsywrtx.html