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

Emma999 · April 18, 2025 · Last by 古一 replied at May 12, 2025 · 5930 hits

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

共收到 12 条回复 时间 点赞

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

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

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

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

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

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

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

我直接用的字典

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

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

HelloLoneWolf 回复

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

小黑子-IKUN 回复

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

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

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

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

写在哪真的不重要,怎么方便怎么来,不用拘泥于形式

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up