pytest+request自动化测试框架搭建,pytest测试框架常用功能

  pytest+request自动化测试框架搭建,pytest测试框架常用功能

  

目录

  一.环境部署

  二。用例设计的原则

  第三,判断用例执行结果的方法

  四。yaml配置文件

  五、执行用例的常用方法

  不及物动词测试报告的生成

  首先是环境部署:必须先安装Python环境,然后是pycharm和pytest库。其他可以根据需要安装,以后可能会用到:

  库/插件/工具

  安装方法

  使用

  一个

  安装python 3.x

  2

  安装pycharm

  三

  安装pytest库

  pip安装pytest

  Pytest库4

  安装yaml

  pip安装pyyaml

  配置文件

  五

  安装pytest -html

  pip安装pytest-html

  生成html报告

  六

  安装allure

  pip安装allure-pytest

  描述测试用例

  第二,用例设计有四个主要原则:

  1.测试用例的文件名以test_*命名。py或* _ test.py

  2.方法或函数以test_开始;

  3.该类从Test_开始;

  4.所有包都必须有__init__。py文件。

  此外,如果您想在pycharm上直接执行测试用例,您必须添加:

  if _ _ name _ _== _ _ main _ _ :pytest . main(-Quse case . py )

  三。判断用例执行结果的方法pytest通过assert断言设置用例的预期执行结果,判断实际执行结果是否与之一致。使用方法如下:

  1.为了测试大小是否相等,assert可以使用“==”和“!=""、" "、"="、=等符号来比较相等、不等、小于、大于、大于或等于以及小于或等于,例如:

  断言1!=2 2.测试包含和排除。assert可以直接使用in和not in来比较包含和排除,例如:

  断言b 3中的a,测试真或假。assert可以直接判断对象是否为真,不需要任何辅助符号,assert not用于判断是否为假,例如:

  Assert 1断言失败一般可以看到如下输出,表示用例失败的执行结果不符合我的预期成功,即该用例执行失败:

  当然,也可以指定断言失败的返回信息如下:

  断言a% 2==0,“值是奇数,应该是偶数”。此外,pytest可以在断言比较中提供丰富的上下文信息。例如:

  test _ set _ comparison():set 1=set( 111 )set 2=set( 222 )assertset 1==set 2 IV。yaml配置文件1,yaml(又一种标记语言):它是一种专门用于编写配置文件的语言。

  2.yaml的基本语法规则:

  区分大小写;

  用缩进表示层次关系(注意:此处只允许空格表示缩进,空格数量不重要,不允许Tab

  同一级别的元素的左侧需要对齐;

  使用#表示注释;

  3.yaml支持三种数据结构:

  Object:一组键值对,也称为映射)/wndxbc(hashes)//dictionary;

  Array:按顺序排列的一组值,也称为sequence)/list;

  标量:单一的、不可分割的值。字符串、布尔值、整数、浮点数、Null、时间、日期;

  4.阅读和转换方法

  Open方法用于读取yaml文件的数据;

  然后通过load方法转换成字典;

  例如,我将一些关于Linux虚拟机的信息放在config.yaml文件中:

  主机名: 10.2.12.87 # ipport: 22用户名: root 密码: 123456 然后在用例中,可以直接读取config.yaml文件并使用这些数据:

  file=open(/TestData/config . YAML ,encoding= utf-8 )RES=YAML . load(file,Loader=yaml。Fullloader)主机名=res[主机名]端口=res[端口]用户名=res[用户名]密码=res[密码]

  5.执行用例的常用方法1。执行某个文件夹下的所有用例:

  Py文件夹名称/

  2.执行单个用例

  py测试用例. py

  3.-k表达式按关键字匹配

  pytest -k test_method或test_other

  将运行名称包含“test_method”或“test_other”的所有方法或类

  4.-m MARKEXPR标记表达式

  所有用@ pytest.mark.slow decorator修饰的测试都将运行。

  5.-v增加冗余用例执行输出;-q减少冗余用例执行输出

  6.-x一旦遇到错误就停止执行。

  7,- maxfail=num错误达到一定数量,停止执行。

  8.-LF (-last-failed)只运行上次失败的用例。

  9.-FF ( - ff( - failed-first)优先考虑上次运行失败的用例,然后运行其他用例。

  10,-s打印用例中打印的内容。

  不及物动词测试报告的生成pytest-html模块用于生成测试报告。如果你想要生成测试报告,你可以按照下面的方法执行用例:

  Py用例。py-html=/path /report.html或者通过这样做,您可以将css样式合并到html中:

  test-html=/path/report . html-self=contained-html报表的效果如下:

pytest+request自动化测试框架搭建,pytest测试框架常用功能