Python 自动化框架,参数用 yaml 还是用 excel

Emma999 · 2025年04月18日 · 最后由 fiskeryang 回复于 2025年04月21日 · 4213 次阅读

框架:pytest+requests+ 数据驱动
一开始参数少的时候,用 yaml 写参数,看得挺清晰,
但是我们的创建商品接口,一个 json 里面,它有很多层,感觉这样子用 yaml 写参数,会好难,而且会容易写错吧。
大家在做自动化的时候,参数是写在 yaml 还是用 excel?应该可以直接把一串 json 参数写到一个 excle 的单元格,然后读取出来传参吧?😂

共收到 11 条回复 时间 点赞

我之前纠结过,后来是选 csv,最大优点是纯文本,比较和编辑方便。

1.YAML 适合结构化的数据,支持嵌套和注释,可读性好,但复杂结构容易出错。

2.Excel 适合表格形式的数据,管理大量测试用例方便,但处理多层嵌套 JSON 需要额外处理,可能不如 YAML 直观。

3.JSON 文件结构清晰,和接口数据结构一致,但同样可能在编辑时容易出错,特别是没有注释支持。或者,像楼上说的可以使用 CSV,但同样会有和 Excel 类似的问题。

接口自动化本身就存在一定的维护成本,尤其是当接口参数复杂时。数据管理策略的选择需要在维护成本、可读性、团队协作和长期可持续性之间找到平衡,不存在一劳永逸的完美方法。

如果没有非技术人员参与用例编写的话,YAML 是综合起来最合适的

用来用去,还是觉得代码才是最好的

我直接用的字典

没有特别好的方法
我是用 excel 管理用例,同时保存一份同步 json 用于版本比对 😅

写个前端,数据放数据库, 非技术人员 直接 在前端界面操作, 可读性 跟维护性 都比较好

HelloLoneWolf 回复

你这个直接把简单问题复杂化了

看项目的需求哈, 如果只是几个人测试人员在用,确实不需要, 但是多部门, 跨项目, 统一管理, 还是需要自动化的接口框架 最后都还是 要平台化, 权限管理 ,数据用例管理也好, 都会比较好!

我之前都是用 excel,然后嵌套的话就用 jsonpath 就好了

数据用 model,测试场景数据存 yaml

框架的好处是便携 拿到哪里直接就能用,我们经常会有在客户现场用自动化跑冒烟的场景

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册