pytest
文章平均质量分 75
可爱又迷人的 反派角色
这个作者很懒,什么都没留下…
展开
-
pytest--测试的参数化
导言实际测试过程中,测试用例可能需要支持多种场景,可以把场景强相关的部分抽象为参数,通过对参数赋值来驱动用例的执行。参数化对的行为表现在不同的层级上:fixture的参数化测试用例的参数化:使用@pytest.mark.parametrize可以在测试用例、测试类甚至是测试模块中标记多个参数或者fixture的组合也可以通过pytest_generate_tests这个钩子方法自定义参数化的方案。源码:#_pytest/python.pydef parametrize(self, argna原创 2021-05-26 10:49:40 · 934 阅读 · 0 评论 -
pytest-捕获告警信息
1.告警信息的默认捕获行为pytest可以自动捕获测试中产生的告警信息,在测试结束后进行展示import warningsdef api_v1(): warnings.warn(UserWarning('请使用新版本的api')) return 1def test_one(): assert api_v1() == 1返回结果:D:\pytest\exercise\chapter8>pytest -q test_show_warning.py.原创 2021-05-25 19:18:08 · 958 阅读 · 0 评论 -
pytest--临时目录和文件
1.相关的fixture1.1 tmp_pathtmp_path是一个用例级别的fixture,其作用是返回一个唯一的临时目录对象(pathlib.Path)CONTENT = "content"def test_create_file(tmp_path): d = tmp_path / "sub" d.mkdir() #创建一个子目录 p = d/"hello.txt" p.write_text(CONTENT) assert p.read_text()原创 2021-05-19 20:08:46 · 877 阅读 · 0 评论 -
pytest-在测试用例中编写和上报断言
pytest支持在测试用例中编写和上报断言使用断言语句def f(): return 3 * 3 *3def test_function(): assert f() == 4执行结果如下, 从执行结果中可以看出函数返回的具体值collected 1 item test_assert2.py F原创 2021-05-07 20:18:28 · 373 阅读 · 0 评论 -
pytest入门
一、pytest入门?pytest框架使编写小型测试变得容易,但可以扩展以支持应用程序和库的复杂功能测试。特点:失败的assert语句的详细信息自动发现测试模块和方法二、使用步骤1.引入库代码如下(示例):'''只执行pytest,会查找当前目录及子目录下test_*.py和*_test.py文件如果想只执行某个文件,可以pytest start.py加上-q就是显示简单的结果pytest -q start.py'''def func(x): return x+1de原创 2021-04-26 09:12:31 · 252 阅读 · 3 评论 -
pytest入门
如何调用pytest通常,pytest命令会执行在当前文件夹或者子文件夹下所有test_.py或_test.py类型的py文件。1.通过Python -m pytest 调用pytestpython -m pytest [...]这种调用方式等同于直接调用pytest […],但是要注意这种通过python调用的方式会同时将当前目录添加到sys.path。1.1 退出码pytest有六种退出码:Exit 0:找到所有的测试用例并测试通过Exit 1:找到所有的测试用例并运行,但是部分用例原创 2021-04-25 22:39:23 · 207 阅读 · 0 评论