接口测试 Python + pytest + excle 接口自动化测试如何跳过某些用例的执行

退之 · 2021年02月07日 · 最后由 tester 回复于 2021年02月09日 · 3651 次阅读

通过 Python + pytest + excle 接口自动化测试,数据都放在 excel 中进行维护,每个 sheet 页对应一个功能模块,每个 sheet 页有多个测试用例,每个 sheet 页对应一个.py 文件,.py 文件下只有 1 个测试用例,通过参数化的方式执行 excel sheet 页的测试用例。但是这样子有个问题:比如想跳过某些用例的执行或者是给用例打标签怎么做呢?pytest 的标签只能用在模块、类、方法上面,但用例有维护在了 excel 里面,excel 里面又不支持这些标签。感觉这样做粗化了用例的力度,限制了 pytest 的能力,标签不能支持直接使用。想问下有遇到这个问题吗?这个问题怎么处理呢?

共收到 5 条回复 时间 点赞

在 excel 里面加个标签,读取用例数据的时候根据标签过滤。比如在 sheet 名称后边加个后缀,或者 sheet 表格里面加一列是否跳过标识,具有这样标识的都跳过。

pytest.skip(), pytest.skipif()
excel 只是用来存放案例数据,与 yaml 或 json 是一样的,不会影响 pytest 框架的功能

对 就跟楼上说的 pytest.skip()

嘿Neal先森 回复

只有一个用例,对应到 excel 的一个 sheet 页,这个用例参数化后有多个子用例,怎么用 pytest.skip(),只有一个用例

退之 回复

pytest.skip() 可以作为装饰器也可以放在方法内部,总有一种适合你

退之 关闭了讨论 02月09日 10:31
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册