Pytest单元测试框架如何实现参数化
1、传入单个参数
pytest.mark.parametrize(argnames,argvalues)
argnames:参数名
argvalues:参数对应的值,类型必须为可迭代类型,一般为 list
import pytest class Test01(): @pytest.mark.parametrize("school",["深圳多测师","广州多测师","上海多测师"]) def test_dcs(self,school): print(school) if __name__ == '__main__': pytest.main(["-s","test_demo1.py"]) # 结果如下 test_demo1.py 深圳多测师. 广州多测师. 上海多测师.
2、传入多个参数
pytest.mark.parametrize((arg1,arg2),[(argvalue1,argvalue2),(argvalue3,argvalue4)])
list 中每个元素都是个元组,元组里的每个元素都与参数一一对应
import pytest class Test01(): @pytest.mark.parametrize(("school","schoolmaster"), [("深圳多测师","Mr.Chen"), ("上海多测师","Mr.Xie"), ("广州多测师","Mr.Fu")]) def test_dcs(self, school, schoolmaster): print("{}校区的校长是{}".format(school,schoolmaster)) if __name__ == '__main__': pytest.main(["-s","test_demo1.py"]) # 结果如下 test_demo1.py 深圳多测师校区的校长是Mr.Chen. 上海多测师校区的校长是Mr.Xie. 广州多测师校区的校长是Mr.Fu.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Python unittest单元测试openpyxl实现过程解析
一.初识单元测试 1)定义: 单元:函数或者是类 单元测试:测试类或者函数 python内置的单元测试框架:unittest 2)单元测试的意义 好处:投入小,收益大.能够精准的,更早的发现问题. 3)单元测试与测试关系 python 很难测试 java 的单元. 关键是单元测试一般是开发或者测试开发做的. 测试一般会在集成.系统.验收进行测试 4)unittest的注意事项: 1.模块名需要以 test_ 开头 2.类名:以 Test 开头 3.测试用例的方法名称以 test_ 开头 4.单元
-
Python单元测试及unittest框架用法实例解析
例题取用登录模块:代码如下 def login_check(username,password): ''' 登录校验的函数 :param username:账号 :param password: 密码 :return: ''' if 6<=len(password)<=18: if username=='admin' and password=='123456': return {'code':0,'msg':'登录成功'} else: return {'code':1,'msg':'账号密码
-
Python单元测试工具doctest和unittest使用解析
Python标准库包含两个测试工具. doctest:一个简单的模块,为检查文档而设计,但也适合用来编写单元测试. unittest:一个通用的测试框架. 一.使用doctest进行单元测试 创建文件mymath.py,内容 def square(x): ''' 计算平方并返回结果(下面是单元测试的格式) >>> square(2) >>> square(3) ''' return x * x if __name__ == '__main__': import doct
-
Python单元测试模块doctest的具体使用
开发高质量软件的过程中,我们经常会为每个函数编写测试,这样在开发过程中运行这些测试的时候就比较方便,doctest是一个python标准库自带的轻量单元测试工具,适合实现一些简单的单元测试. doctest模块提供的这样的工具,用于扫描模块并验证程序文档字符串中嵌入的测试,在docstring中寻找到测试用例并执行,比较输出结果与期望值是否符合. 我们如何构造这些测试呢?很简单 在python的交互解释器中创建测试用例,并复制到docstring中 tip:doctest在docstring中寻
-
Python单元测试框架unittest使用方法讲解
概述 1.测试脚手架(test fixture) 测试准备前要做的工作和测试执行完后要做的工作.包括setUp()和tearDown(). 2.测试案例(test case) 最小的测试单元. 3.测试套件(test suite) 测试案例的集合. 4.测试运行器(test runner) 测试执行的组件. 命令行接口 可以用命令行运行测试模块,测试类以及测试方法. 复制代码 代码如下: python -m unittest test_module1 test_module2 python -m
-
python单元测试unittest实例详解
本文实例讲述了python单元测试unittest用法.分享给大家供大家参考.具体分析如下: 单元测试作为任何语言的开发者都应该是必要的,因为时隔数月后再回来调试自己的复杂程序时,其实也是很崩溃的事情.虽然会很快熟悉内容,但是修改和调试将是一件痛苦的事情,如果你在修改了代码后出现问题的话,而单元测试可以帮助我们很快准确的定位到问题的位置,出现问题的模块和单元.所以这是一件很愉快的事情,因为我们知道其它修改或没有修改的地方仍然是正常工作的,而我们目前的唯一问题就是搞定眼前这个有点问题的"家伙&qu
-
Python 单元测试(unittest)的使用小结
测试目录 项目的整体结构可以参考"软件目录开发规范",这里单说测试目录.一般都是在项目里单独创建一个测试目录,目录名就是"tests". 关于目录的位置,一种建议是,在项目名(假设项目名是Foo)的一级子目录下创建二级子目录 "Foo/foo/tests" .但是这样可能是因为用起来不方便,有很多是按下面的做法.不过下面的示例我还是用这个方法来创建测试目录. 还可以把测试目录向上移一层,作为一级子目录,直接创建在项目之下 "Foo/te
-
Python unittest单元测试框架及断言方法
1.单元测试的几个重要概念 (1)Test Case 一个Test Case实例是一个测试用例,完整的测试流程包括测试前准备环境的搭建(setUp).实现测试过程的代码(run).以及 测试后环境的还原(tearDown). (2)Test Suite Test Suite用来组装单个测试用例,可以将多个测试用例集合再一起来执行,通过addTest加载TestCase到TestSuit实例中. (3)Test Runner 执行测试,执行结果.unittest单元测试框架中,通过TextTest
-
Python unittest单元测试框架实现参数化
当我们在使用TestNG时,发现它有一个非常好用的参数化功能.当你的测试用例有固定的参数和断言结果时,它可以相似用例的节省用例的个数. 例子如下: import static org.testng.Assert.assertEquals; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; /** * Created by fnngj on 2017/3/19. */ public cla
-
Pytest单元测试框架如何实现参数化
1.传入单个参数 pytest.mark.parametrize(argnames,argvalues) argnames:参数名 argvalues:参数对应的值,类型必须为可迭代类型,一般为 list import pytest class Test01(): @pytest.mark.parametrize("school",["深圳多测师","广州多测师","上海多测师"]) def test_dcs(self,sch
-
Pytest单元测试框架生成HTML测试报告及优化的步骤
目录 一.安装插件 IDE中安装 命令行安装 二.生成html报告 三.使用小技巧 指定路径 报告独立 四.报告优化 一.安装插件 要生成html类型的报告,需要使用pytest-html插件,可以在IDE中安装,也可以在命令行中安装.插件安装 的位置涉及到不同项目的使用,这里不再详述,想了解的可自行查询. IDE中安装 在File>Settings>Project>Project Interpreter界面,点击“ + ”搜索pytest-html即可进行安装. 命令行安装 建议先在命
-
自动化测试Pytest单元测试框架的基本介绍
目录 一.Pytest概念 二.Pytest特点 三.Pytest安装 安装pytest命令: 查看pytest版本: 安装生成测试结果的HTML报告pytest-html 四.Pycharm配置Pytest pycharm依次选择 配置用例脚本运行模式. 菜单栏 配置项目路径 五.Pytest用例运行规则 六. Pytest简单使用 一.Pytest概念 Pytest 是 Python 的一种单元测试框架,与 Python 自带的 unittest 测试框架类似,但是比 unittest 框架
-
python单元测试框架pytest的使用示例
首先祝大家国庆节日快乐,这个假期因为我老婆要考注会,我也跟着天天去图书馆学了几天,学习的感觉还是非常不错的,这是一篇总结. 这篇博客准备讲解一下pytest测试框架,这个框架是当前最流行的python语言最流行的单测框架,不掌握可不行,首先这个框架属于第三方模块,需要通过pip安装即可 pip install pytest 下面我们进入正题 一.介绍pytest的运行规则 1.测试文件的名称必须要以test_*.py的格式,或者*_test.py的格式 2.测试类的名称必须要以Test开头,且这
-
python单元测试框架pytest介绍
pytest是python语言中一款强大的单元测试框架,用来管理和组织测试用例,可应用在单元测试.自动化测试工作中. unittest也是python语言中一款单元测试框架,但是功能有限,没有pytest灵活. 就像:苹果电脑mac air和mac pro一样.都是具备同样的功能,但是好用,和更好用. 本文包含以下几个内容点: 1)pytest的简单示例 2)pytest的安装 3)pytest的特征.与unittest的区别. 4) pytest如何自动识别用例. 5)pytest框架中,用例
-
pytest测试框架+allure超详细教程
目录 1.测试识别和运行 2.参数化 3.测试报告美化-allure 1.测试识别和运行 文件识别: 在给定的目录中,搜索所有test_.py或者_test.py文件 用例识别: Test*类包含的所有test_*的方法(测试类不能有__init__方法) 不在类中的所有test_*方法 pytest也能执行unit test写的用例和方法 运行方式1.pycharm页面修改默认的测试运行方式settings页面,输入pytest,修改Default test runner 2.右键执行pyth
-
Javascript单元测试框架QUnitjs详细介绍
一.什么是 QUnit QUnit(http://qunitjs.com/) 是一个非常强大的javascript单元测试框架,可以帮你调试代码.它是由 jQuery 团队的成员写的,而且是 jQuery 的官方测试套装.但QUnit一般是足以测试任何常规 javascript 代码,它甚至可能通过一些 javascript 引擎比如 Rhino 或 V8 来测试服务器端 JavaScript.如果你不熟悉"单元测试"的概念,请不要担心.这不是很难理解的: 复制代码 代码如下: 在计算
-
用Ruby实现一个单元测试框架的教程
在去年的YOW Melbourne开发者大会上,我参加了一些研习班.这些研习班由@coreyhaines和 @rains负责,因此TDD(测试驱动开发)成为了主要讨论的内容.通常这不是一个问题,但是令人沮丧的是(考虑到这是2010年举办的开发者大会),那时上网还不是很方便,我刚装上linux的笔记本无法下载Rspec.幸运的是几周前,我决定自己写一个单元测试框架(因为我有这个能力:)),接着我就有了一个可用的测试框架,问题解决了.但是,这让我想到一个问题,最少可以用多少代码写成一个可用的单元测试
-
Python Unittest自动化单元测试框架详解
本文实例为大家分享了Python Unittest自动化单元测试框架的具体代码,供大家参考,具体内容如下 1.python 测试框架(本文只涉及 PyUnit) 参考地址 2.环境准备 首先确定已经安装有Python,之后通过安装PyUnit,Python版本比较新的已经集成有PyUnit(PyUnit 提供了一个图形测试界面UnittestGUI.py) 参考:查看地址 3.代码实例 使用的IDE为 PyCharm,DEMO结构如图 1.简单地一个实例 # Test002_Fail.py #
随机推荐
- JavaScript正则方法replace实现搜索关键字高亮显示
- SQL Server简单模式下误删除堆表记录恢复方法(绕过页眉校验)
- jquery中的事件处理详细介绍
- jQuery实现可拖拽3D万花筒旋转特效
- Java并发编程之栅栏(CyclicBarrier)实例介绍
- SpringBoot构建Restful service完成Get和Post请求
- Entity Framework之DB First方式详解
- 浅谈js中变量初始化
- 利用ASP发送和接收XML数据的处理方法
- php结合ajax实现手机发红包的案例
- pyenv命令管理多个Python版本
- Maven安装及MyEclipse中使用Maven
- jQuery中的AjaxSubmit使用讲解
- JavaScript判断密码强度(自写代码)
- ubuntu下mysql二进制包安装教程
- 蓝雨设计整站SQL注入漏洞
- Windows 8 Metro用C#连接SQLite及创建数据库,数据表的增删改查的实现
- java HashMap和HashTable的区别详解
- 网页吧为您提供100MB的空间
- ADO.NET获取数据(DataSet)同时获取表的架构实例