Pytest


 pytest是一个非常成熟的全功能的Python测试框架,主要有以下几个特点:

 

  • 简单灵活,容易上手
  • 支持参数化
  • 能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytest+requests)
  • pytest具有很多第三方插件,并且可以自定义扩展,比较好用的如pytest-selenium(集成selenium)、pytest-html(完美html测试报告生成)、pytest-rerunfailures(失败case重复执行)、pytest-xdist(多CPU分发)等
  • 测试用例的skip和xfail处理
  • 可以很好的和jenkins集成
  • report框架----allure 也支持了pytest

安装Pytest

  • pip install -U pytest

Pytest用例设计原则

  • 测试类以Test开头,并且不能带有init方法
  • 以test_开头的函数
  • 以Test开头的类
  • 所有的包pakege必须要有__init__.py文件
  • 断言使用assert

运行Pytest的两种方式

  • 运行脚本时可以设置相应的参数,详情请查看参数说明
  • Pycharm里代码运行
pytest.main(["test.py"])
  • 命令行运行方式
pytest test.py
# 运行指定类下的指定方法
pytest 文件名::类名::方法名

Pytest参数说明

  • -v 说明:可以输出用例更加详细的执行信息,比如用例所在的文件及用例名称等
  • -s 说明:输入我们用例中的调式信息,比如print的打印信息等
  • -x:遇到错误的用例,立即退出执行,并输出结果
  • -collect-only:表示把待执行的用例全部展示出来
  • -vv :显示详细的测试结果
  • -tb=no:不展示用例失败的错误详情
  • -maxfail=num 当用例错误达到指定数量时,停止测试

ini配置文件

  • 多个参数中间为空格
  • 创建pytest.ini文件(文件名固定写法)
# [pyteset]
[pytest]
addopts=-vv -s 
testpaths=../HC/huace 
python_files=test*.py 
python_classes=huace
python_functions=test* 
  • 命令行直接运行代码:pytest
  • 会自动搜到这个pytest.ini配置文件进行运行

如果文章对你有帮助,麻烦伸出发财小手点个赞,感谢您的支持,你的点赞是我持续更新的动力。


最后:福利

技术行业,一定要提升技术功底,丰富自动化项目实战经验,这对于你未来几年职业规划,以及测试技术掌握的深度非常有帮助。

金九银十面试季,跳槽季,整理面试题已经成了我多年的习惯!下面有我近几年的收集和整理,整体是围绕着【软件测试】来进行整理的,主体内容包含:python自动化测试专属视频、Python自动化详细资料、全套面试题等知识内容。

对于软件测试的的朋友来说应该是最全面最完整的面试备战仓库,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你!

愿你我相遇,皆有所获! 欢迎关注微信公众号:【伤心的辣条】 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!

内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!