一.pytest安装

pip install pytest:安装

pip install pytest==version:指定版本安装

pytest --version:查看版本

pip install -u pytest:更新

pip install pytest-html:安装html报告插件

pytest --html=url:生成html报告

二.定义文件,类,函数规范

1.定函数时,函数名字前加个test_,如:def test_one:  print "xxxxx"

2.定义class的时候Test...,以Test开头,如:Testclasee

3.定义.py文件的时候以test_开头,如:test_case

三.pytest常用参数

pytest -h:查看帮助

pytest --collect-only package名:收集要运行文件中的哪些函数,但是不运行

pytest -v package名:-v可查看具体哪个文件下的哪个函数运行错误或失败

pytest -k “函数1 or 函数2”:指定一些test_函数运行

pytest -m “参数“  package名:指定参数运行函数(可在函数上方标记参数@pytest.mark.参数)

pytest -x package:遇到一个错误时停止运行(在-x 后加个-v可查看具体哪个文件下的哪个函数运行错误或失败)

pytest --maxfail=x   package名:设置最大错误数,当运行错误大于x后停止运行

pytest -s package名:打印函数中的print显示在命令行

pytest --lf package名:显示运行错误的函数信息

pytest --ff package名:正确的错误的都显示出来

5.fixture

1.pytest.fixture可用在普通函数上面,test_函数引用时可直接使用函数名引用返回值

2.fixture优先级运行

(1).在根目录下新建配置文件conftest.py

(2)在conftest.py文件下编写运行前后的程序

所有.py文件运行前后

每个文件.py运行前后

每个class运行前后

每个function运行前后

3.fixtrue中的参数(scope='function',params=None,autouse=False,ids=None,name=None)

(1)scope:控制fixture的作用范围,有四个取值,根据作用范围大小划分:session> module> class> function

--function:函数或者方法级别都会被调用,默认值为function

--class:每一个类调用一次,一个类中可以有多个方法

--module:每一个.py文件调用一次,该文件内又有多个function和class

--session:是多个文件调用一次,可以跨.py文件调用,每个.py文件就是module

(2)params:可以实现前置函数的参数化,调用前置函数的测试用例可以根据前置函数不同的参数执行多次

(3)autouse:默认值为False,不自动调用,开启后

scope=function或者未设置,则每个测试用例都会自动调该前置函数;

scope=class,则会在测试类中的第一个测试方法前自动调该前置函数;

scope=module,则会在测试模块中的第一个测试函数前自动调该前置函数;

scope=session,则会在所有测试模块调用中的第一个测试函数前自动调用

4)ids:params 测试 ID 的一部分

5)name:默认装饰器的名称

6.parametrize参数化(数据驱动)

若参数场景过多时可以导入csv文件或连接数据库

7.pytest-order排序

(1).安装

pip install pytest-order

(2).编写

可定义在class和function上,数字也可为-1,-2,-3,-表示倒数运行

若编写好运行顺序后需要在中间插入一条case,before=“函数名”

pytest单元测试基本使用的更多相关文章

  1. Pytest单元测试框架-测试用例运行规则

    1.Pytest测试用例运行规则 在pytest单元测试框架下面执行用例,需要满足以下几个特点: 1. 文件名以test_*.py开头或者*_test.py 2. 测试类.测试函数以test开头 3. ...

  2. Pytest单元测试框架-Pytest环境安装

    unittest是python自带的单元测试框架,它封装好了一些校验返回的结果方法和一些用例执行前的初始化操作,使得单元测试易于开展,因为它的易用性,很多同学也拿它来做功能测试和接口测试,只需简单开发 ...

  3. Pytest单元测试框架:插件-allure-pytest环境搭建并在本地生成一个测试报告

    之前写了allure-pytest的官方文档啃的内容,有些交流的朋友,实践起来没什么头绪,所以就有了这篇文章,也给自己填个坑 第一步:搭建Allure.JDK环境 1. 搭建JDK环境 不装jdk你会 ...

  4. Pytest单元测试框架之简单操作示例

    前言: Pytest是第三方单元格测试框架,更加简单,灵活,而且提供了更多丰富的扩展: Pytest与UnitTest框架的区别 UnitTest测试用例执行顺序是依照ascii码执行,而Pytest ...

  5. pytest 单元测试

    pytest简介 pytest 是python的一种单元测试框架,它非常的简洁.清晰. pytest 安装 pip install -U pytest 查看pytest版本 pytest --vers ...

  6. Pytest 单元测试框架

    1.pytest 是 python 的第三方单元测试框架,比自带 unittest 更简洁和高效 2.安装 pytest pip install pytest 3.验证 pytest 是否安装成功 p ...

  7. Pytest单元测试框架——Pytest+Allure+Jenkins的应用

    一.简介 pytest+allure+jenkins进行接口测试.生成测试报告.结合jenkins进行集成. pytest是python的一种单元测试框架,与python自带的unittest测试框架 ...

  8. Pytest单元测试框架-学习

    pytest: Python的一个单元测试框架,基于UnitTest二次开发,语法上更加简洁,可以用来做Python开发项目的单元测试,UI自动化.接口自动化测试等,有很多的插件访问Pytest插件汇 ...

  9. Pytest单元测试框架之FixTure基本使用

    前言: 在单元测试框架中,主要分为:测试固件,测试用例,测试套件,测试执行及测试报告: 测试固件不难理解,也就是我们在执行测试用例前需要做的动作和测试执行后的需要做的事情: 比如在UI自动化测试中,我 ...

  10. pytest单元测试框架

    一.安装方式 1.安装命令:pip install pytest 2.html安装插件:pip install pytest -html 二.pytest执行指定测试用例 1.思想:通过对测试用例进行 ...

随机推荐

  1. 基于lio-sam框架,教你如何进行回环检测及位姿计算

    摘要:本篇主要解析lio-sam框架下,是如何进行回环检测及位姿计算的. 本文分享自华为云社区<lio-sam框架:回环检测及位姿计算>,作者:月照银海似蛟龙 . 前言 图优化本身有成形的 ...

  2. vue-grid-layout数据可视化图表面板优化过程所遇问题汇总

    对于drag事件不熟悉的,请先阅读:<drag事件详解:html5鼠标拖动排序及resize实现方案分析及实践> 之前老项目grafana面板,如下图所示(GEM添加图表是直接到图表编辑, ...

  3. Axure 多人协作

    创建团队项目 团队 => 从当前文件创建团队项目 签出的文件才能被修改 签出 签入 发布评论 邀请 编辑的5种状态 和SVN差不多的概念 已有项目导入 https://www.bilibili. ...

  4. Spring事务传播机制解析

    确保数据一致性的关键 在Java的Spring框架中,事务管理是保证应用数据一致性和可靠性的关键.Spring提供了灵活的事务传播机制,它定义了事务边界,以及在嵌套方法调用时如何处理事务.本文旨在深入 ...

  5. 3 分钟看完 NVIDIA GPU 架构及演进

    近期随着 AI 市场的爆发式增长,作为 AI 背后技术的核心之一 GPU(图形处理器)的价格也水涨船高.GPU 在人工智能中发挥着巨大的重要,特别是在计算和数据处理方面.目前生产 GPU 主流厂商其实 ...

  6. 【LibCurl】HomeBrew 安装 LibCurl & CMake 配置

    LibCurl 在官网中明确指出支持 HomeBrew 进行安装. 那么在 macOS 端的安装就不会想 Win 下需要根据版本进行编译了,方便许多 brew install curl # 安装完成后 ...

  7. 【每日一题】32. 比赛 (DFS / 概率DP)

    补题链接:Here [方案一:DFS] 首先我们可以计算出每道题做不出来的概率 \(unsolve[i] = (1 - a[i])(1- b[i])(1 - c[i])\) 然后因为只有 12 道题, ...

  8. AtCoder Beginner Contest 198 个人题解(AB水题,C思维,D思维+全排列,E题DFS搜索,F懵逼)

    补题链接:Here A - Div 题意:N 个不一样的糖,请问有多少种分法给 A,B两人 水题,写几组情况就能知道输出 \(N - 1\) 即可 B - Palindrome with leadin ...

  9. Vue+Element前端导入导出Excel

    1 <el-upload 2 class="upload-demo" 3 :action="uploadUrl()" 4 :limit="1&q ...

  10. 简易机器学习笔记(九)LeNet实例 - 在眼疾识别数据集iChallenge-PM上的应用

    前言 上一节大概讲了一下LeNet的内容,这一章就直接来用,实际上用一下LeNet来进行训练和分类试试. 调用的数据集: https://aistudio.baidu.com/datasetdetai ...