![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
pytest
文章平均质量分 58
番茄牛腩不吃番茄
一名努力提升自己的测试工程师
展开
-
pytest重运行失败用例
pytest重运行失败用例python版本必须3.5以上;pytest版本必须是5.0以上,不然会出现一些乱七八糟的问题,这也是官方建议。安装 pytest-rerunfailurespip install pytest-rerunfailures重运行是指运行失败了,间隔几秒后再去运行,延迟时间可指定,次数也可指定 。F:\git\AuomationTest\TestPytest\code\ch1>pytest --reruns 5======================.原创 2021-01-15 20:56:10 · 742 阅读 · 0 评论 -
pytest【conftest.py共享fixture及使用fixture执行配置】
fixture可以放在单独的测试文件里,但是如果我们希望共享fixture,就需要在公共目录下新建个conftest.py文件,并将fixture放在里面。图片中我们新建的conftest.py文件,只能是test_package文件夹下的.py文件及子级的文件夹下的.py文件可以使用。最上面的绿色部分是不能使用的,这是因为作用域的问题,所以也引申出当前作用域下的.py文件是可以共享当前的conftest.py。# exercise/test_package/conftest.pyimport.原创 2020-09-25 20:16:54 · 682 阅读 · 0 评论 -
pytest【fixture中各自参数的使用】
@pytest.fixture(scope=“function”, ids=None, name=None, params=None, autouse=False)scope:“function”(default),“class”, “module”, “package” or “session” 这个不作细述“请点击这里查看”ids:字符串id的列表,每个id对应于参数,是测试id的一部分,如果没有提供id,它们将从参数自动生成标识。params:一个可选的参数列表,它将导致对fixtur原创 2020-09-18 21:12:49 · 791 阅读 · 0 评论 -
pytest 【fixture 作用范围】
【指定fixture作用范围】fixture 包含了一个scope的可选参数,也就是作用范围,用于控制fixture执行配置和销毁逻辑,scope有四个参数【function、class、module、session(默认的是function)其实还有一个package】源码部分的参数介绍:def fixture( callable_or_scope=None, *args, scope="function", params=None, autouse=Fal原创 2020-09-04 22:36:58 · 555 阅读 · 0 评论 -
jenkins配置并生成allure报告
在配置jenkins上生成allure报告时,踩了很多的坑,最深的坑就是页面找不到报告数据,但控制台又提示报告已生成,其实归根结底就是报告路径的问题。如下图展示:最初也是在网上查阅了很多资料,给的解决办都是法五花八门的,也都没有解决我的问题,最后还是自己理了下思路慢慢的给整出来了。下面整体介绍下过程:首先,因为我是把执行命令放在一个 .py文件中,也就是俗称的入口文件,如下图展示:其次,代码提交至码云后,在jenkins进行配置操作,因为我是windows服务器,所以我的构建操作是用的 “原创 2020-08-17 20:36:08 · 1625 阅读 · 0 评论 -
pytest【参数化测试 二】
@pytest.mark.parametrize:参数化测试功能使用内置的pytest.mark.parametrize装饰器为测试函数启用参数的参数化。下面是字符串/元组/列表/字典等示例,该功能实现检查某些输入是否导致期望的输出注意:parametrize里面传的参数均为序列类型的数据,传小数或整数时会报类型错误import pytest@pytest.mark.parametrize('a', '5')def test_01_fourteen(a): print(a)@原创 2020-07-16 20:10:18 · 238 阅读 · 0 评论 -
pytest【参数化测试 一】
在测试过程中我们需要用到多组数据来运行脚本,在pytest框架的parametrized能很好的来解决我们的问题测试函数中如下操作:import pytest@pytest.mark.parametrize('actual, expect', [('3+5', 8), ('2+4', 6), ('6*9', 42)])def test_eleven(actual, expect): print(actual) print(expect)首先要导入pytest,其次我们要定义一原创 2020-07-14 22:02:04 · 563 阅读 · 0 评论 -
pytest【运行测试子集】
一、单个目录运行 运行单个目录下的所有测试,以目录作为pytest的参数即可(venv_dome) F:\TESTING\BlogPosts\ReadPytest>pytest ch2 --tb=no================================================================================== test session starts ==============================================原创 2020-07-03 21:06:35 · 662 阅读 · 0 评论 -
pytest【跳过测试和预期失败】
pytest自身有一些内置标记:skip 、skipif 、xfail等;sikp和skipif:是允许你跳过不希望运行的测试原创 2020-06-20 17:54:24 · 433 阅读 · 0 评论 -
pytest【marker标记】
测试函数标记pytest提供了标记机制,允许你使用marker对测试函数(测试用例)做标记,一个测试函数(测试用例)可以有多个marker,一个marker也可以用例标记多个测试函数(测试用例)。针对冒烟测试,我们可以使用marker标记,检查系统有没有重大缺陷,因为冒烟测试通常是不会包含全套测试的。选定了两个测试函数(测试用例)来作为冒烟测试,首先我们在 test_run_pass() 、test_run_fail() 两个测试函数(测试用例)的头部添加装饰器 @pytest.mark.smoking原创 2020-06-19 21:02:31 · 2172 阅读 · 1 评论 -
pytest【assert声明和检测预期异常】
如何使用 assert 声明使用pytest编写测试用例时,若需要传递失败消息,则可直接使用python中自带的assert关键字如果使用了其他的测试框架,则会看到许多以assert开头的函数,下面列举了使用assert与各种以assert开头的函数的区别pytestunittestassert somethingassertTrue(something)assert a == bassertEqual(a, b)assert a <= bassertLes原创 2020-06-12 21:35:00 · 1765 阅读 · 0 评论 -
pytest【pytest如何在终端使用命令运行用例】
【Pytest框架】如何使用命令选项,运行测试用例前面我们已经使用过了-v 和 --verbose 选项。pytest还提供了很多选项,你可以使用pytest --help 查看全部选项。就是下面所展示内容:F:\TESTING\BlogPosts\ReadPytest>pytest --helpusage: pytest [options] [file_or_dir] [file_or_dir] [...]positional arguments: file_or_dirgene原创 2020-06-11 20:11:43 · 3693 阅读 · 0 评论 -
pytest【运行单个测试用例】
【pytest框架】运行单个测试用例单个测试用例运行,直接在指定文件后方添加 ::test_name(注意此处两个冒号为英文格式),像下面这样:F:\TESTING\BlogPosts\ReadPytest>pytest -v test_one.py::test_pass================================================================================== test session starts =========原创 2020-06-08 19:51:20 · 7901 阅读 · 0 评论 -
pytest【运行pytest及会话信息简解】
运行Pytest及会话信息简解运行pytest时可以指定目录和文件。如果不指定,pytest会搜索当前目录及其子目录中以test_开头或以_test结尾的测试函数以下的例子是我在当前目录下,终端输入pytes(没有指定任何参数)运行的结果,可以看出在ReadPytest目录中的两个以test_开头的py文件全部被运行了F:\TESTING\BlogPosts\ReadPytest>pytest===================================================原创 2020-06-06 14:56:12 · 566 阅读 · 0 评论