栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

UI 自动化框架对比2

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

UI 自动化框架对比2

1、pytest 

在开始本文之前,我想跟大家澄清两个概念,一个是测试框架一个是测试工具。很多人容易把他们搞混了,测试框架是诸如 Unittest、Pytest、TestNG 这类,而测试工具指的则是 Selenium、Appium、Jmeter 这类。

测试框架的作用是,帮助我们管理测试用例、执行测试用例、参数化、断言、生成测试报告等基础性工作,让我们将精力用在测试用例的编写上。好的测试框架应该具有很高的扩展性,支持二次开发,并能够支持多种类型的自动化测试。

测试工具的作用是为了完成某一类型的测试,比如 Selenium 用于对 WEB UI 进行自动化测试,Appium 用来对 APP 进行自动化测试,Jmeter 可以用来进行 API 自动化测试和性能测试。另外,Java 语言中 OkHttp 库,Python 语言中的 requests 库,这些 HTTP 的 client 也可以看做是一种 API 测试工具。

01 — Pytest 核心功能

在开始使用 Pytest 之前,先来了解一下 Pytest 的核心功能,根据官方网站介绍,它具有如下功能和特点:

  1. 非常容易上手,入门简单,文档丰富,文档中有很多实例可以参考。
  2. 能够支持简单的单元测试和复杂的功能测试。
  3. 支持参数化。
  4. 能够执行全部测试用例,也可以挑选部分测试用例执行,并能重复执行失败的用例。
  5. 支持并发执行,还能运行由 nose, unittest 编写的测试用例。
  6. 方便、简单的断言方式。
  7. 能够生成标准的 Junit XML 格式的测试结果。
  8. 具有很多第三方插件,并且可以自定义扩展。
  9. 方便的和持续集成工具集成。
2、Unittest

Unittest是Python标准库中自带的单元测试框架,Unittest有时候也被称为PyUnit,就像JUnit是Java语言的标准单元测试框架一样,Unittest则是Python语言的标准单元测试框架。

Unittest支持自动化测试,测试用例的初始化、关闭和测试用例的聚合等功能,它有一个很重要的特性:它是通过类(class)的方式,将测试用例组织在一起。


3、unittest vs pytest:

 总结:总体来说,unittest用例格式复杂,兼容性无,插件少,二次开发方便。pytest更加方便快捷,用例格式简单,可以执行unittest风格的测试用例,无须修改unittest用例的任何代码,有较好的兼容性。pytest插件丰富,比如flask插件,可用于用例出错重跑,还有xdist插件,可用于设备并行执行,效率更高。
 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/350552.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号