接口测试 请教一个接口测试的问题

buggg · 2019年07月10日 · 最后由 null 回复于 2019年08月22日 · 1410 次阅读

目前设计的接口测试框架中,测试数据都是用 excel 或者 yaml 文件管理的,除了维护这些测试数据,还要另外对应每个测试用例写 python 代码,非常不人性。假设我现在能拿到所有需要执行的测试数据,是一个 list,我能不能动态的生成测试类和测试方法,然后用 unittest 执行,生成测试报告呢?
当然,我知道 httprunner 已经实现了这些,我也看了https://testerhome.com/topics/18875 分析的 httprunner 原理,可惜基础不够,还是不会运用 type 和 setattr 去完成我的需求,不知道有没有其他办法实现呢

共收到 6 条回复 时间 点赞

自问自答,已借鉴 httprunner 的设计方法,实现了动态生成测试类和测试方法,可以完美用 unittest 执行测试用例

建议你自己按照 网上有人写的代码 ,手动复制一个接口的代码 感受一下;你就晓得 接口怎么测试了;

我能不能动态的生成测试类和测试方法,然后用 unittest 执行,生成测试报告呢 --- 自定义个模板,自动生成文件就行了,参考一下自定义生成 unittest 用例方法

buggg 回复

怎么实现的呢请问下

evanliuyufeng 回复

使用 type 生成动态测试类,再使用 setattr 为该动态类添加动态测试方法

这个问题也困扰我很久了 目前我的做法是把测试的数据提前准备好放在 yaml 里面 然后定义类 去读取每个接口的测试数据 但是针对多个环境还有数据有效性没有太好的支持
我的想法是通过 SQL 查询出我需要的数据(如果没有查询结果为空那么 就请求对应的接口生成我需要的测试数据)再去请求接口这种做法可不可行?

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