zoukankan      html  css  js  c++  java
  • 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装饰器

  • 相关阅读:
    数组解耦
    curl 命令简单应用
    虾米音乐的一个小功能
    bower使用-es6的前提
    nvm安装和使用
    webpack简单入门
    tp5.0入门笔记
    如何将ts文件转为mp4格式
    c语言介绍
    简单工厂模式
  • 原文地址:https://www.cnblogs.com/hehehe-wy7/p/14032973.html
Copyright © 2011-2022 走看看