0
点赞
收藏
分享

微信扫一扫

pytest入门 ------ 测试用例规则

一、pytest测试用例规则

1. 模块名必须以test_开头或_test结尾

2. 测试类必须以Test开头且不能有init方法

3. 测试方法必须以test开头

二、pytest测试用例运行方式

1、主函数模式
   a) 运行所有:pytest.main()

   b) 指定模块/目录:pytest.main(['-s', '指定模块名.py'])【注:如果指定模块为package包下所有文件,则传package路径即可】

    c)通过nodeid指定用例运行:nodeid由模块名、分隔符、类名、方法名、函数名组成。例如:

pytest.main(['-s', '路径/指定模块名.py::类名::方法名'])

2、命令行模式
    a) 运行所有:pytest

    b) 指定模块/目录:pytest -s 指定模块名.py【注:如果指定模块为package包下所有文件,则传package路径即可】

3、读取pytest.ini配置文件【**实际中需要用到,最重要**】

pytest.ini这个文件是pytest单元测试框架的配置文件。

  1. 位置:一般放在项目根目录,且名字不能改

  2. 编码:必须是ANSI,可以用notepad++修改编码格式

  3. 作用:可以改变pytest默认的行为(比如你不想用例以test开头,那就来这里改)

  4. 运行规则:不管用主函数还是命令行模式运行,都会读取配置文件。

  5. 写法:

    根目录下新建pytest.ini文件

【注:方便大家理解,使用时建议把中文注释删掉】

执行测试用例时如果提示

即编码错误。可以通过notepad++打开这个文件,然后修改编码为ANSI(建议把中文注释删掉)

三、参数详解(以列表list方式传参)

  • -s输出用例调试信息包括print的内容

  • -v除了输出调试信息,还会显示类名用例方法名

  • -vs-v和-s结合到一起

  • -n支持多线程或分布式运行;例:

    pytest.main(['-vs', 'testcase/', '-n=2'])

    pytest -vs ./testcase -n 2

  • --reruns失败后重跑,需要安装pytest-rerunfailures库,语法:pytest.main(['-vs', 'testcase/', '--reruns=2'])用例执行失败时,会重复执行2次。

  • -x只要有一个用例报错,则用例停止。语法:

    pytest.main(['-vs', 'testcase/', '-x'])

  • --maxfail最多报错后停止。上面-x是一个报错就停止,这个是最多能接受多少个用例报错。语法:--maxfail=2

  • -k 根据测试用例的部分字符串指定测试用例。语法:

    pytest.main(['-vs', 'testcase/', '-k', '用例名中的字符'])

三、pytest执行测试用例的顺序

unittest:根据ASCII的大小来决定执行顺序

pytest:默认从上到下。如果不想从上到下执行,则可以通过加标记的方式:

@pytest.mark.run(order=n)

end今天的分享就到此结束了,后续会陆续分享知识

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!å¨è¿éæå¥å¾çæè¿°

最后: 可以在公众号:程序员小濠 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!喜欢软件测试的小伙伴们,可以加入我们的测试技术交流扣扣群:779450660里面有各种软件测试资源和技术讨论)

 

举报

相关推荐

0 条评论