5年高级测试员,还不会用Pytest+Allure实现自动化用例失败截图

每天进步一点点,关注我们哦,每天分享测试技术文章

本文章出自【码同学软件测试】

码同学公众号:自动化软件测试,领取资料可加:magetest

码同学抖音号:小码哥聊软件测试

UI自动化中通常为了能够追踪测试用例执行失败时的原因,我们需要查看用例执行最后的界面,因此我们就需要在测试报告中能够查看到最终的界面截图。本文将带领大家学习如何实现用例失败截图,并将其展示在测试报告中。



01环境搭建

  • 安装python3

  • 安装pytest

pip install pytest

  • 安装allure-pytest

pip install allure-pytest

  • 安装selenium

pip install selenium

  • 安装allure命令行工具并配置环境变量,下载地址如下

    https://docs.qameta.io/allure/#_installing_a_commandline

  • 安装pycharm

  • 安装chrome浏览器以及chromedriver

  • pycharm搭建项目

     项目中创建目录结构及文件如下

    

 

 



2编写测试用例

免费领取码同学软件测试课程笔记+超多学习资料+完整视频+面试题,可加微信:magetest



  • 首先在testcases包下创建一个测试文件test_login.py,代码如下

     

     



3driver初始化及失败用例截图

  • driver初始化

在ui自动化测试过程中,driver对象是重中之重,因此通常情况下我们会将其单独拿出来作为前置条件使用,因此我们就采用自定义fixture的方式来提供全局性driver的初始化过程

在conftest.py中实现全局driver定义及自定义fixture,代码如下:

 

 

  • 失败用例截图

driver本身就具备截图方法,而我们最终的目的不仅仅是截图,而且还要将其展示在测试报告中,因此我们采用pytest自带的一个钩子pytest_runtest_makereport来实现,在conftest.py中追加如下代码:

 

 



4执行测试

在pycharm的Terminal中执行如下命令,完成测试

pytest -sv --alluredir ./report/allure-results --clean-alluredir

测试完成后,继续执行如下命令生成测试报告

allure generate ./report/allure-results -o ./report/allure-report --clean

在pycharm打开生成的allure测试报告,查看失败用例的截图如下

 

 

免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频 ☞ 可加:magetest/关注码同学公众号:自动化软件测试

本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

posted @ 2022-08-23 09:32  码同学软件测试  阅读(64)  评论(0编辑  收藏  举报