【自动化测试框架】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 自动化测试框架 ...
随机推荐
- SYCOJ137斜线输出(1)
题目-斜线输出(1) (shiyancang.cn) 在同一斜线上的满足方程.坐标关系计算即可. #include<bits/stdc++.h> using namespace std; ...
- 深度学习之BP算法
1.介绍 人工神经网络(Artificial Neural Network,ANN)简称神经网络(NN),是在现代生物学研究人脑组织所取得成果的基础上提出来的.人工神经网络是大脑生物结构的数学建模,有 ...
- JUC之读写锁问题
读写锁 读写锁在同一时刻可以允许多个读线程访问,但是在写线程访问时,所有的读线程和其他写线程均被阻塞.读写锁维护了一对锁,一个读锁和一个写锁,通过分离读锁和写锁,使得并发性相比一般的排他锁有了很大提升 ...
- 【笔记】论文阅读:《Gorilla: 一个快速, 可扩展的, 内存式时序数据库》
英文:Gorilla: A fast, scalable, in-memory time series database 中文:Gorilla: 一个快速, 可扩展的, 内存式时序数据库
- 搭服务器之centos-ipv6源--配置各虚拟机系统的ipv6网络安装源。
在2g内存的台式机里安装了三台虚拟机,跑起来好可以,就是swap用的比较多,图见上一篇随笔.现在平台基本有了,自己笔记本算总控,实验室台式机跑着4台机器(一实三虚),加上一台服务器,可以做很多事情了, ...
- python02day
回顾 1.编译型和解释型 编译型:一次性编译成二进制,再执行 执行效率高,但不能跨平台,开发效率低 代表语言:C 解释型:逐行解释成二进制,再执行 可以跨平台,开发效率高,但执行效率低 代表语言:py ...
- 洛谷P1002过河卒(60分)
逻辑没问题,运行超时,得分60 写注释了,不多解释 import java.util.Scanner; public class D1 { static int a,b,c,d,con; //棋盘大小 ...
- CSS之常见布局|常用单位|水平垂直居中
常见布局: 1. 流式布局:百分比布局,宽高.margin.pinding都是百分比 2. 固定布局:盒子的宽高固定,如:margin.padding等 3. 浮动布局:float 4. 弹性布局:f ...
- C++读写图片文件
1.C方式 string sourcefilename = "D:\\Logo.jpg"; string destfilename="D:\\Logo1.jpg" ...
- 计算机网络再次整理————tcp例子前奏[三]
前言 简单编写一下tcp例子. 正文 我们常说IOS有7层,实际上也只有4层,或者这样说简单的说是4层. 首先是数据链路层,首先这一层解决了什么问题呢?为什么要有这一层呢? 首先要抛开有操作系统的意识 ...