摘要: 一、前言 pytest.ini配置文件可以改变pytest的运行方式,读取配置信息,按指定的方式去运行 pytest里有些文件是非test文件 pytest.ini:pytest的主配置文件,可以改变pytest的默认行为 conftest.py:测试用例的一些fixture配置 _init_.py 阅读全文
posted @ 2022-04-22 22:50 方缘 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 一、前言 安装pytest-html插件:pip install --user -U pytest-html 关于参数--user的说明: pip install -U packagename 代表进行全局安装,安装后这台机器上所有用户可用 pip install --user -U package 阅读全文
posted @ 2022-04-22 22:49 方缘 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 一、前言 平常在做功能测试时,经常会遇到某个模块不稳定,偶现一些bug,或者领导临时安排帮忙复现线上比较难出现的bug,我们一般会反复执行多次,最终复现问题 自动化运行用例时,也会偶现bug,可以针对某个用例,或者针对某个模块的用例重复执行多次 安装插件:cmd or pycharm的termina 阅读全文
posted @ 2022-04-22 22:49 方缘 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 一、前言 cmd or pycharm的terminal输入命令:pip install -U pytest,安装pytest的同时会安装pytest-rerunfailures。 二、rerun所有失败的用例 1、使用--reruns命令行选项,并指定要运行测试的最大次数:pytest --rer 阅读全文
posted @ 2022-04-22 22:48 方缘 阅读(443) 评论(0) 推荐(0) 编辑
摘要: 一、前言 写用例脚本时,只有测试数据和期望结果不一样,但操作步骤是一样的测试用例,可以用参数化。pytest允许在多个级别启用测试参数化 pytest.fixture() 允许fixture有参数化功能 @pytest.mark.parameterize 允许在测试函数或类中定义多组参数和fixtu 阅读全文
posted @ 2022-04-22 22:45 方缘 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 一、前言 pytest可以支持自定义标记,自定义标记可以把一个移动端项目划分为多个模块,然后指定模块名执行。工作中我们会写yy Android和yy iOS的用例脚本,会指定哪些用例是在yy Android下执行的,哪些用例是yy iOS下执行的,在运行脚本时指定mark即可 二、示例代码 1 #! 阅读全文
posted @ 2022-04-22 22:45 方缘 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 一、前言 pytest.mark.skip 可以标记无法在某些平台上运行的测试功能,或者您希望失败的测试功能 希望满足某些条件才执行某些测试用例,否则pytest会跳过运行该测试用例 实际常见场景:跳过非移动端的测试,或者跳过依赖于当前不可用的外部资源(例如数据库)的测试 二、@pytest.mar 阅读全文
posted @ 2022-04-22 22:45 方缘 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 一、前言 what's the conftest.py?我们可以理解成一个专门存放fixture的配置文件。for example,写yy自动化脚本时,多个测试用例文件(test_speak.py、test_send_gift和test_attention.py等test_*.py)的所有用例都需要 阅读全文
posted @ 2022-04-22 22:42 方缘 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 一、前言 用例脚本执行完成后,每条用例都有自己的状态,常见的状态有: passed:测试通过 failed:断言失败 error:用例质量不行,代码报错(eg:fixture不存在,fixture里面有报错) xfail:预期失败,加了@pytest.mark.xfail() 二、error举例 1 阅读全文
posted @ 2022-04-22 22:42 方缘 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 一、前言 为了提高代码复用性,我们在写测试用例时,会用到不同的fixture,比如:最常见的登录操作,大部分用例的前置条件都是登录 假设不同的用例想登录不同的测试账号,比如登录已配置音乐品类的账号,那么登录fixture就不能把账号写死,需要通过传参的方式来完成登录操作 二、小试牛刀 (1)传单个参 阅读全文
posted @ 2022-04-22 22:42 方缘 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 一、前言 什么是断言,为什么要断言,要如何断言。。。刚入门时,可能很多小伙伴会有各种疑问(大神请绕过~)。顾名思义,断言是判断一个用例的执行结果,断言通过,用例执行成功,否则用例执行失败。工作中写自动化脚本时,少不了断言,我们工作项目用的是pytest。pytest使用的是python自带的asse 阅读全文
posted @ 2022-04-22 22:25 方缘 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 一、前言 虽然知道自动化脚本一般要写前后置方法,但有时还是会记不清执行顺序和具体意义。。。其中setup翻译是设置,teardown翻译是拆卸 unittest有2个前置方法和2个后置方法,分别是: setup() setupClass() teardown() teardownClass() py 阅读全文
posted @ 2022-04-22 22:25 方缘 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 一、前言 setup()和teardown()等方法可以在执行用例前或结束后加入一些操作,但都是针对整个脚本全局生效的。我们项目组在写直播间自动化脚本时,可能会遇到一些场景:比如进入直播间,发言和送礼等都需要用户先登录,分享直播间和清晰度切换等不需要用户登录。这些场景就无法用setup和teardo 阅读全文
posted @ 2022-04-22 22:25 方缘 阅读(75) 评论(0) 推荐(0) 编辑
摘要: 一、前言 pytest是什么,为什么要用pytest,pytest要怎么用。。。可能一开始很多小伙伴跟我一样(嘻嘻嘻,大神请绕路~),一直没搞懂pytest相关概念和应用。没有捷径,novice从头学起。me to... 二、pytest是什么 pytest是Python下的第三方单元测试框架,相比 阅读全文
posted @ 2022-04-22 22:24 方缘 阅读(29) 评论(0) 推荐(0) 编辑