软件测试框架之unittest与pytest的对比-

 我来答
富港检测技术(东莞)有限公司_ 2024-05-27
展开全部

ISTA3E程序是对相同产品的集合包装的综合模拟性能测试,集合包装件被定义为将一个产品、多个产品或包装件放置在滑板或托盘上,固定在一起或是作为一个单元运输。例如:一台机器由带瓦楞底托的托盘上、瓦楞侧围、顶盖包装,用缠绕膜缠绕在托盘上。用于评估包装件在运输和搬运过程中通常遇到的振动、冲击和其他危害时的保护性能;用来评估装载方式的稳定性;

此测试等级依据一般流通环境确定试验强度,不代表任何特定的运输条件;

包装和产品作为一个整体,不能单独考核;

可能不包括某些运输条件,如潮湿,气压或非正常搬运作业;

根据不同的流通环境或试验目的,可以选用其他合适的ISTA试验程序。

ISTA3E试验准备:

温湿度处理要求:试验前,包装件应在实验室温湿度条件下放置12个小时;

可选择的温湿度处理要求:(在必选的温湿度预处理之后进行);为了恰当的判定包装件在预设的温湿度条件下的性能状态,并且已知产品在极端的温湿度条件下可能会损坏。

户如乐9318
2022-07-24 · TA获得超过6649个赞
知道小有建树答主
回答量:2559
采纳率:100%
帮助的人:138万
展开全部

这篇 文章 是关于 自动化测试 框架的,算是一种传统的 测试框架 与新测试框架的一种对比吧( unittest 与pytest)。如果正在学习自动化测试的小伙伴一定不要错过这篇文章了。

  Unittest

  unittest是 python 标准库,自带的 单元测试 框架,有时候也被称为PyUnit。类似于java的 JUnit

  Pytest

  pytest是python第三方单元测试库,功能非常的丰富,也比较成熟,比unittest更简洁方便。

  下面会从是否需要安装,用例编写规则,用例分类执行,前置和后置,参数化,断言,报告,是否有失败重跑机制等多维度来分析unittest与pytest测试框架的区别;

  一、是否需要安装

  Unittest是标准库,所以是不需要安装的。

  Pytest是第三方库,所以使用前需要安装:pip install pytest

 铅旅  二、用例编写规则

  1、Unittest

  · 首先需要导入unittest(import unittest)

  · 测试类必须继承unittest.TestCase

  · 测试方法必须以”test_”开头

  · 测试类必须要有unittest.main()方法

 卜激旦  2、Pytest

  · 测试文件必须以”test_”开头或”_test”结尾

  · 测试方法必须要”test_”开头

  · 测试类的命名要以”Test”开头

  · 运行不需要main方法

   三、用例分类执行

  1、Unittest

  默认执行的是全部的 测试用例 ,但也可以通过加载testsuit执行部分测试用例

   2、Pytest

  通过@pytest.mark来标记类和方法,pytest.main加入参数(“-m”)只运行标记的类和方法

   四、用例的前置和后置

  1、Unittest

  unittest提供了setUp/tearDown,在每个用例运行前执行一次,运行结束后执行一次。

  SetUpClass和tearDownClass,用例执行前,用例执行结束后,只运行一次。

  2、Pytest

  pytest提供了模块级,类级,方法级等setup/teardown,比unittest的setUp/tearDown要更丰富灵活。

  · 模块级(setup_module/teardown_module)开始于模块始末,全局的,整个模块开只运行一次,优先于测试用例。

  · 函数级(setup_function/teardown_function)只对函型扰数用例生效(不在类中)

  · 类级(setup_class/teardown_class)只在类中前后运行一次(在类中),只针对此类生效

  · 方法级(setup_method/teardown_method)开始于方法始末(在类中),定义在类里面,每个用例都执行一次

   五、参数化

  1、Unittest

  需要依赖DDT库。

   2、Pytest

  使用@pytest.mark.parametrize装饰器。

   六、断言

  1、Unittest

  unittest提供了很多断言方式。

  如:assertEqual、assertIn、assertTrue、assertFalse

  2、Pytest

  pytest提供assert表达式,简单,方便。

   七、报告

  1、Unittest

  unittest使用HTMLTestRunnerNew库

  2、Pytest

  pytest有pytest-HTML、allure插件

   八、失败是否重跑

  1、Unittest

  unittest没有提供这个功能

  2、Pytest

  Pytest通过pytest-rerunfailures插件是支持用例执行失败重跑的,

  好了,分析完unittest和pytest它们的区别以后,咱们再来做一个简单的总结:

  Unittest和Pytest这两个都属于python的单元测试框架,也是目前用的比较多的自动化测试框架。

  Unittest呢是Python自带的,比较传统的测试框架,提供的插件少,用例格式比较复杂。Pytest相对来说,更加简单方便 ,兼容性比较强,插件也很丰富。用例出错了还可以重跑,非常的灵活,效率要比Unittest更高。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
康科达
2023-08-22 广告
北京康科达科技有限公司是一家专业从事放射治疗配套设备及耗材生产、经营的科技企业。客户面向全国的疾控中心和放疗科医院。主营电离室、放疗剂量仪、放疗自动扫描水箱、调强验证系统、放疗质控设备、激光定位系统、放疗定位产品、放疗定位膜、放疗模室产品、... 点击进入详情页
本回答由康科达提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式