【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

相关推荐
鱼日先生13 小时前
Dify 高级实验(09):测试用例生成——如何让 AI 自动产出测试用例?
人工智能·测试用例·工作流·dify·ai agent·大模型应用·ai 训练
lsz1525902 天前
数据库系统测试方案中测试用例原则
测试用例·性能测试·软件开发·数据库设计·测试原则
不言而喻i2 天前
Excel测试用例文档文档转换亿图xmind工具
测试用例·亿图图示
程序员杰哥2 天前
依赖于第三方接口时,如何进行测试?
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
测试19984 天前
2026全新软件测试面试八股文(含答案+文档)
自动化测试·软件测试·python·测试工具·面试·职场和发展·测试用例
姚青&5 天前
测试流程管理
测试用例
天才测试猿5 天前
软件测试知识总结(基础篇)
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例