【自动化测试框架】pytest和unitttest你知道多少?区别在哪?该用哪个?

一、大家熟知的自动化测试框架
Java
JUnit、TestNG等等。
python
PyUnit(unittest)、Pytest、Robot Framework等等
二、Pytest介绍
- pytest 是非常成熟全功能的Python测试框架。
- 它可以胜任unittest能做到的各种各样场景,比如:单元测试、web测试、app测试、接口测试等等。
- pytest是个插件化的平台,它比unittest更强大也在于此。目前已经有大量第三方插件扩展和增强它的功能
- 你可以根据自己需求,定制化开发出自己的插件
- 可以很好的和CI工具进行结合
三、Pytest优点
- 简单灵活,容易上手
- 支持参数化
- 能够支持简单的单元测试和以及一些复杂的功能测试,也可以用来做web、app、接口(Selenium/Appnium/Requests)等自动化测试
- pytest有很多第三方插件,并且可以进行自定义扩展,比较好用的如pytest-selenium(集成selenium)、pytest-rerunfailures(失败case重复执行)、pytest-html(完美html测试报告生成)、pytest-xdist(多CPU分发)等
- 测试用例的skip和xfail处理
- 可以很好的和Jenkins集成
- report框架----allure 也支持了pytest
- 断言方式简单便捷
四、pytest与unittest区别

五、Pytest功能介绍
1.Fixture:

2.mark:


3.assert断言:
assert xx---判断xx为真
assert not xx ---判断xx不为真
assert a in b---判断b包含a
assert a == b---判断a等于b
assert a !=b ---判断a不等于b
等等
4.其他功能:
pytest.xfail()
pytest.exit()
pytest.skip()
pytest.skipif()
六、Pytest架构运行流程

七、应用场景
接口自动化
web自动化
UI自动化
等等

八、Pytest使用
1.自动化用例编写

2.执行脚本:
1. 命令行中执行用例:

2.IDE中执行用例:

更多功能使用请查看pytest官网:
https://docs.pytest.org/en/latest/contents.html
自动化测试框架实战
接口自动化测试框架:
python+request+pytest+allure:https://www.cnblogs.com/upstudy/p/15921045.html
【自动化测试框架】pytest和unitttest你知道多少?区别在哪?该用哪个?的更多相关文章
- iOS自动化探索(四)自动化测试框架pytest - 安装和使用
自动化测试框架 - pytest pytest是Python最流行的单元测试框架之一, 帮助更便捷的编写测试脚本, 并支持多种功能复杂的测试场景, 能用来做app测试也能用作函数测试 官方文档: ht ...
- python3: 自动化测试框架pytest
最近在学习web自动化,所以在这里总结一下pytest框架. 其实pytest 和 unittest 都是自动化测试框架,但是pytest更好用一些,有以下几个优点:1)可以根据标签执行用例:2)?? ...
- 自动化测试框架 hierarchyViewer、Uiautomator、Appium的区别比较!
一.HierarchyViewer: 优点:1)能够可视化的角度直观地获得UI布局设计结构和各种属性的信息 2)使用hierarchyviewer.bat来检索手机界面布局 缺点:1)稳定性差,出现过 ...
- Python接口自动化测试框架: pytest+allure+jsonpath+requests+excel实现的接口自动化测试框架(学习成果)
废话 最近在自己学习接口自动化测试,这里也算是完成一个小的成果,欢迎大家交流指出不合适的地方,源码在文末 问题 整体代码结构优化未实现,导致最终测试时间变长,其他工具单接口测试只需要39ms,该框架中 ...
- iOS自动化探索(七)自动化测试框架pytest - 测试报告
这里我们单独来看下关于如何生存测试报告 准备测试代码如下: #coding: utf- import pytest @pytest.fixture() def login(): print '输入账号 ...
- iOS自动化探索(六)自动化测试框架pytest - fixtures
Fixture介绍 fixture是pytest特有的功能,它用pytest.fixture标识,定义在函数前面.在编写测试函数的时候,可以将此函数名称做为传入参数,pytest将会以依赖注入方式,将 ...
- iOS自动化探索(五)自动化测试框架pytest - Assert断言的使用
使用assert语句进行断言 pytest允许使用标准的python assert语法,用来校验expectation and value是否一致 代码演示: def func(): def test ...
- 【转】自动化测试框架: pytest&allure ,提高自动化健壮性和稳定性
序 在之前,我写过一个系列“从零开始搭建一个简单的ui自动化测试框架(pytest+selenium+allure)”,在这个系列里,主要介绍了如何从零开始去搭建一个可用的自动化工程框架,但是还缺乏了 ...
- 广深小龙-基于unittest、pytest自动化测试框架之demo来学习啦!!!
基于unittest.pytest自动化测试框架之demo,赶紧用起来,一起学习吧! demo分为两个框架:①pytest ②unittest demo 中 包含 web.api 自动化测试框架 ...
随机推荐
- 基于Spring实现策略模式
背景: 看多很多策略模式,总结下来实现原理大体都差不多,在这里主要是讲解下自己基于Spring更优雅的实现方案:这个方案主要是看了一些开源rpc和Spring相关源码后的一些思路,所以在此进行总结 首 ...
- HDU 2041 超级楼梯 (斐波那契数列 & 简单DP)
原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2041 题目分析:题目是真的水,不难发现规律涉及斐波那契数列,就直接上代码吧. 代码如下: #inclu ...
- springboot打包第三方jar包是失败
在项目开发时有时我们需要引入一些在maven仓库中不存在的包 一.配置maven环境变量 在path环境变量中添加 %maven_home%\bin (window10环境下) cmd界面输入 mvn ...
- PIKACHU之文件包含漏洞
PIKUCHU靶场之文件包含 一.file inclusion(local) 实验源码: <?php /** * Created by runner.han * There is nothing ...
- 《剑指offer》面试题53 - I. 在排序数组中查找数字 I
问题描述 统计一个数字在排序数组中出现的次数. 示例 1: 输入: nums = [5,7,7,8,8,10], target = 8 输出: 2 示例 2: 输入: nums = [5,7,7,8, ...
- dubbo泛化引发的生产故障之dubbo隐藏的坑
dubbo泛化引发的生产故障之dubbo隐藏的坑 上个月公司zk集群发生了一次故障,然后要求所有项目组自检有无使用Dubbo编程式/泛化调用,强制使用@Reference生成Consumer.具体原因 ...
- Web安全攻防(一)XSS注入和CSRF
跨站脚本攻击(XSS) XSS(Cross Site Scripting),为不和层叠样式表CSS混淆,故将跨站脚本攻击缩写为XSS. 攻击原理: 恶意攻击者往Web页面里插入恶意Script代码,当 ...
- 【记录一个问题】libtask无法在android下编译通过
源码来自:https://github.com/msteinert/libtask 首先是asm.S无法编译通过. 其次,编译context.c出现这些错误: .//context.c:124:19: ...
- 谷歌浏览器和火狐浏览器如何查看HTTP协议
谷歌浏览器和火狐浏览器如何查看HTTP协议 谷歌浏览器查看HTTP协议 火狐浏览器查看HTTP协议
- python语法缩进
1.python会根据缩进来判断代码行和前一句代码行之间的关系 2.for循环后一定要缩进,for循环后面的冒号代表告诉python,下面是代码行缩进的第一行