pytest 框架,pytest测试框架官方文档

  pytest 框架,pytest测试框架官方文档

  目录pytest测试框架执行方式只是以函数方式执行函数或方法名的命名规范DOS命令执行断言方法assert几个断言方法assert==Assertion Assertion包含assertion assert is。断言前后的值等于pytest。常用命令解释pytest -v输出详细信息pytest -s输出测试函数或测试方法打印内容pytest -k按分类执行测试点-m按组执行-x执行失败立即停止- maxfail执行最大次数- tb=line错误消息一行显示pytest API测试实践。

  pytest测试框架只是作为一个函数来执行。

  我们先来了解一下Pytest是如何执行的。

  test_pytest.py

  pytestdef test _ 001():print( test _ 01 )def test _ 002():print( test _ 02 )if _ _ name _= _ _ main _ _ :第一个# main方法的参数-v打印详细信息,第二个执行的模块的名称pytest.main ([-v , test _ pytest.py])看看输出结果。顶部的红线显示了执行了多少测试用例,中间显示了执行的测试模块,底部显示了通过了多少以及何时通过的。

  函数名或方法名的命名规范。函数名或类的方法名必须以test开头,否则无法执行。现在我们来演示一下。

  import test def test _ 001():print( test _ 01 )def test _ 002():print( test _ 02 )def add _ test():print( add _ test )if _ _ name _== _ _ main _ 。

  可以看到add_test这两个方法没有运行。

  命令执行:切换到当前项目的路径,输入pytest -v test_pytest.py执行。

  断言方法pytest使用python的本机断言方法assert进行断言。

  断言几个断言方法1,==内容和类型必须同时满足等式。

  2.实际结果包括预期结果。

  3.is断言前后的两个值相等。

  Assert==断言x和y相加后的实际结果是否等于预期结果。

  Add (x,y):return x xdef test _ add():assert add(1,1)==2执行后控制台上的显示。

  如果你故意纠正预期的结果,看看控制台会显示什么。

  这个错误很明显。

  中的断言包含断言。断言str1字符串是否包含GO

  1= python go PHP Java def test _ in():在str 1 Assertis中断言 go 断言前后的值相等来判断两个字符串是否相等。

  1= admin str 2= admin def test _ is():assert str 2 is str 1==is相同。

  1= admin str 2= admin def test _ is():assert str 2==str 1 pytest常用命令详细解释1 .-v输出详细信息

  2.-s输出测试功能或测试方法的打印内容

  3.-k通过分类执行测试点。

  4.-m是分组执行的。

  5.-x执行失败并立即停止。

  6.max fail执行失败的最大次数。

  7.-TB=line错误消息显示在一行中。

  Py -v输出详细信息。这个命令之前已经显示过很多次了,所以在这里,去掉-v,看看执行后会显示什么,以便比较。

  上面一个是去掉-v,下面一个是添加-v参数。如果执行-v参数,它可以显示特定函数方法的成功或失败。

  Test-s输出测试函数或测试方法打印内容,并输入打印语句内容,例如,打印并检查用户id。

  def test _ id():userid=1234 print(userid)

  Py-k根据类别执行测试点。如果现在有十个测试用例需要执行,而只有五个用例需要执行,你可以使用装饰器将用例分成两类,分别执行。

  @python。可爱的小天鹅是固定写法,后面跟着自己的名字。现在分为运行和停止两类。

  导入pytest@pytest。持久的小天鹅。rundef test _ 001():print( test _ 01 )@ pytest。持久的小天鹅。rundef test _ 002():print( test _ 02 )@ pytest。持久的小天鹅。rundef test _ 03(:print( add _ test )def add(x,y): return x x @ pytest。持久的小天鹅。Stop def test _ add (): assert add (1,1)==2 @ pytest。持久的小天鹅。停止定义测试标识():用户标识=1234打印

  Test-v pytest -v -k“运行”test_pytest.py执行

  执行多重测试分类。

  -m是分组执行的。-m和-k的执行方式不同,只是分类不需要引号。其他都差不多。

  -x未能立即执行;不带-x和带-x的前后对比;no -x执行失败后,下面会继续执行;-x执行失败后,下面的将不会继续执行。

  -max fail的最大执行失败次数。如果最大失败次数设置为2,那么如果两个用例失败,后者将停止执行,如果小于2次,则继续执行。

  -TB=line错误消息显示在一行中。如果没有这个命令,如果有大量的用例执行错误,将很难检查错误消息。

  Pytest API测试以登录界面为例。

  import pytestimport requestsdef test _ log in():r=requests . post(URL= http://127 . 0 . 0 . 1:5000/log in/,data={ phone:1232432241, password:123456 },headers={ User-Agent : Mozilla/5.0(Windows NT 10.0;Win64x64) AppleWebKit/537.36 (KHTML,像壁虎一样)Chrome/80 . 0 . 3987 . 149 Safari/537.36 })print(r . text)assert r . JSON()[ data ][ id ]==28239和r.json () [msg]=。

pytest 框架,pytest测试框架官方文档