【UI自动化测试】5_TPshop项目实战 _批量运行测试用例(重点)

文章目录

  • [一、为什么 批量运行测试用例](#一、为什么 批量运行测试用例)
  • 二、优化代码
    • [2.1 批量运行-添加开关和启动结束脚本](#2.1 批量运行-添加开关和启动结束脚本)
    • [2.2 批量运行-用例排序](#2.2 批量运行-用例排序)
    • [2.3 test_goods.py 代码优化](#2.3 test_goods.py 代码优化)
  • 三、命令行运行pytest

一、为什么 批量运行测试用例

前面已经完成了 test_login.py(登录) 和test_goods.py(新增商品)的测试用例,当我们的脚本写的越来越多,肯定不会一条一条运行,因为要做自动化,让脚本自动帮我们完成所有的回归测试相关任务,那么肯定是以批量运行的方式。要批量运行,就必须有pytest.ini的配置文件。

二、优化代码

现在脚本和手工测试的偏差:我们实际在做手工回归测试的时候,不会测试完登录之后打开一个浏览器关闭浏览器,然后测试新增商品的时候,我又打开浏览器关闭浏览器,绝对不会这样操作。而是在登录之后,马上接着测试其他的测试用例,一旦测试完之后,在最后才会把浏览器给关闭。

1、目标(优化代码后)

  • 运行单条测试用例只会打开/关闭一次浏览器。
  • 运行多条测试用例只会打开/关闭一次浏览器

2、关闭驱动对象方法调整

  • 当代码运行时,自动识别当前是否是批量运行。如果是批量运行,则在整个测试用例运行过程当中不关闭浏览器,只有当运行完成最后一条测试用例之后才会关闭浏览器
  • 当不是批量运行时,运行完单条测试用例完毕之后就会关闭浏览器
python 复制代码
批量运行:
1、每条测试用例运行到类级别的销毁方法时, quit_admin_driver,让条件不成立。
2、运行到最后一条测试用例完毕之后,要再次主动调用quit_admin_driver的方法而且需要让其成功关闭浏览器。
3、对于测试用例的运行做排序。

3、测试用例排序

python 复制代码
方法1:(原来的方法)
test01_login.py
test02_goods.py


方法二:pytest插件(pytest-ordering)

@pytest.mark.run(order=1)
class TestBegin:

@pytest.mark.run(order=2)   
class TestLogin:

order的值越小,优先级越高(仅限于正整数)

2.1 批量运行-添加开关和启动结束脚本

2.2 批量运行-用例排序

2.3 test_goods.py 代码优化

三、命令行运行pytest

相关推荐
质量行者4 小时前
如何写出高质量的测试用例
功能测试·测试用例·集成测试·软件工程·可用性测试·模块测试
姚青&4 小时前
Pytest 测试用例生命周期管理-fixture
测试用例·pytest
少云清7 小时前
【UI自动化测试】3_TPshop项目实战 _一个测试用例脚本编写过程
ui·测试用例
测试199812 小时前
软件测试之压力测试详解
自动化测试·软件测试·python·测试用例·接口测试·压力测试·性能测试
姚青&14 天前
Pytest 测试用例断言
测试用例·pytest
米码收割机14 天前
【测试平台】测试用例管理平台(前后端源码+部署文档)【独一无二】
测试用例
姚青&14 天前
Pytest 测试用例结构
测试用例·pytest
Wpa.wk15 天前
har文件转为接口自动化测试用例
运维·测试工具·自动化·测试用例·接口自动化
workflower15 天前
需求-技术需求
python·测试用例·需求分析·软件需求