• Pytest和Unittest的区别


    一、用例编写规则

    1.使用unittest编写测试用例必须遵循以下规则:

      1.必须首先 导入 import unittest

      2.测试类必须要继承 unittest.TestCase

      3.测试方法必须以test_kai开头

    2.pyest是Python的第三方测试框架,是基于unittest的扩展框架,比unittest更简洁高效,使用pytest编写测试用例必须遵循以下规则:

      1.测试文件必须以test开头或者_test结尾

      2.测试方法需以test开头

      3.测试类必须以Test开头

    二、前置跟后置

      1.unittest提供了setUp/tearDown,每个用例运行前、结束后运行一次。setUpClass和tearDownClass,用例执行前、结束后,只运行一次。

      2.pyets 可以在函数前使用@pytest.fixture()装饰器,fixture使用范围可以是:function(函数级别)、class、module(模块级别)、package(包级别)、session(多个测试类可以共用一个session)

      优势:

      1.fixure命名更加灵活,局限性比较小

      2.conftest.py 配置里可以实现数据共享,不需要import就能自动找到一些配置,可供多个py文件调用。

      3.scope="session" 以实现多个.py跨文件使用一个session来完成多个用例

    三、断言

      1.unittest提供了assertEqual、assertIn、assertTrue、assertFalse等

      2.pytest直接在assert 后面接表达式

    四、测试报告

      1.unittest使用HTMLTestRunnerNew库

      2.pytest有pytest-HTML、allure插件。

    五、失败重跑

      1.unittest无此功能

      2.pytest支持

    六、参数化

      1.unittest需要依赖于ddt库

      2.pytest直接使用@pytest.mark.parametrize装饰器

  • 相关阅读:
    线程与并发系列一:Lock、Monitor、UserSpinLock
    什么是WebService
    异步和多线程有什么区别
    java.sql.SQLException: The server time zone value '' is unrecognized or represents
    java.sql.SQLException: Unable to load authentication plugin 'caching_sha2_password'.
    本地如何查看zookeeper注册了哪些服务
    maven的archetype
    Windows下安装ZooKeeper
    Dubbo架构和原理
    IntelliJ IDEA 2019.2.4破解
  • 原文地址:https://www.cnblogs.com/hehehe-wy7/p/14032973.html
Copyright © 2020-2023  润新知