我用的是这个,在 cursor 里项目的根目录下执行,仅供参考:
请使用python pytest、request框架,生成根目录下django后端项目对应的接口自动化用例到 api-test 文件夹中。要求:
1、覆盖所有接口
2、断言覆盖接口返回码、关键返回字段值
3、使用 allure-report 生成测试报告
4、一个接口一个py文件,py文件中1个用例一个函数
5、合理使用setup和teardown减少代码重复
生成出来的内容大概如下:
当然缺点还是有,比如跑起来有些用例会报错,需要人肉看和修正,有些断言写得还是过于简单,需要人肉加。但从提效角度,省了很多手工活。
确实还是会有一些 bug,需要足够熟悉,给到真正有效的指引,才可以快速和有效解决。但相比自己从零撸代码,省了很多力了。
最近试了下 cursor,可以直接给 django 后台项目,生成完整的 python+pytest+request 的接口自动化用例(根据项目代码自动理解有哪些接口 + 生成对应的自动化用例 + 错误码及关键字段的断言)。这堆代码人肉写,至少 1 人天,用 AI 几分钟左右就可以生成出来,提效挺明显的。
现在 cursor、trae 等深度结合 AI 的 IDE,已经可以做到用自然语言从零生成完整项目,且可以正常跑起来,还可以通过自然语言提需求,AI 直接根据需求改代码,给我震撼还挺大的。
个人观点:
接口自动化平台主要的限制,是整体设计是为自动化使用的,功能上会比较复杂无法方便的提供给非测试/研发人员使用(如产品验收),赋能能力会相对有限
而数据工厂则更加纯粹,界面设计可以更简单,更便于推广给非技术人员使用
以金融场景常用的创建一个系统内已完成四要素信息的账号为例:
接口自动化:先调用注册接口,传入 n 个参数(注意,这里就是技术细节了,需要了解参数名 + 参数值规范),然后调用认证接口,获得四要素认证,最后返回认证通过
数据工厂:一个按钮即可,返回创建完毕的账号名称 + 登录密码
技术实现上,可以数据工厂背后实现就是调用接口自动化平台的用例来完成,只是包一个单独的前端界面,这样可以大幅减少维护成本
很顺的一年呀,羡慕
很圆满的一年呀
我们也是工作流系统,我们自动化主要关注的是按照线上典型的工作流配置,进行工作流操作后,结果是否和预期一致。建议也可以从业务角度看下,实际用户使用的典型工作流配置是怎样的,进行覆盖。
另外,关于封装配置这个,可以考虑封装接口调用时,所有参数都提供默认参数,用例只需要传个别场景需要,要用非默认值的场景,这样也可以减少用例的编写时间。
看了你 2 个截图,有个数据挺有意思的:
有个数没对上:
每秒传输的文件数,按传输量统计,每秒大概有 860*1000/460=1869 个。
但按 qps 算,每秒完成的请求数不到 1 个。
这个差距非常大,没太能想象出到底是什么原因(也许实际传的文件不是同一个?)
建议可以试下:
1、用同一台机器,在 jmeter 压测时,进行手动上传,看看效果(排除网络条件不同,导致的结果差异)
2、在被测机上,也看下压测期间接口 qps 和响应时间数据,看和 jmeter 差距如何
方便的话,建议你把 jmeter 的脚本贴上来,现在的线索还是太少了。
建议可以把目光放长远一些
看短期,关注的会是会不会被开,有没有赔偿。
看长期,你可以得到了一个成长契机,以后发展空间更广阔。比如你可以借助这个能力强的人,快速获取到很多行业经验知识,少走很多弯路。如果合得来,还能成为你以后长期的人脉,后续你找工作可以借助他的人脉帮你内推。
有些时候,想什么就会看到什么,最后就会变成什么。改变想法,路会更宽(有点鸡汤,但从个人接触的身边人看,这确实就是人与人之间的差距所在)
OA 打错字了?