目前公司领导想要落地接口自动化测试,想要楼主出一个接口自动化测试的方案。但楼主对这方面确实涉猎过少(公司都没有做接口测试)
选用什么样的框架搭建接口自动化或者通过工具开展?请各位大佬分享一下经验
前两天虫师大佬不是分享了一篇 seldom 接口自动化的框架么,或者也能用那个开源的 metersphere 平台吧。
如果没有代码经验,就直接用现有的平台,比如我们公司就是用的 metersphere,如果有代码经验就看你是 java 还是 python 了,各自都有较成熟的一套框架
我觉得还是要先了解需求吧,做的自动化主要是解决哪些问题,要拿来做什么,不是拿来跟风
用框架: Java 的 testNG 和 Python 的 pytest,unittest。 --- 这条根据你公司用的什么语言和你具备什么能力来选择
用工具: 比如 postman ,jmeter ,metersphere, soapUI。 ---- 看这种工具是否能满足你尽快的介入完成当前阶段的测试
建议 pytest+request+allure+Jenkins
https://testerhome.com/topics/30495 不会写代码,可以用 itest ,断言以及提取变量都是拖
关于选平台,其实不着急的,先想想下面几个问题。现在缺的不是平台,而是选择的能力。
1.1 团队的现状是什么?
如果当前团队已经有了部分接口测试的工作在开展,只是没有形成标准化、持续化,那么尽可能就以现有的工具为底层基础,进行开发,培养用户习惯的成本是很高的,别人也不一定乐意,还涉及到迁移成本的问题。如果当前团队还没进行过多的接口测试,那么就可以慎重的进行技术选型
1.2 团队的资源有哪些?
这里指的资源其实就是研发能力,会有几个人一起研发,还是你自己一个人?大家擅长的开发语言是什么?是否有能力做前端页面?是否有时间投入(很多时候并不一定会给工时)。对于开发语言而言,不需要纠结是 Java 还是 Python,擅长哪个就用哪个。能和开发团队保持一致最好,不能也关系不大(如果你真的熟悉了一款语言,那么转换到其它语言上也不是什么难事。笔者从 C 切换到 Java,再到现在的 Python,适应过程并不会太长)
1.3 为什么要选它?
在确定完开发语言之后,就可以对应的去做选型了,各语言都有大量的开源框架可以使用(Java 的 JunitTest,TestNg 等,Python 的 Pytest,HttpRunner 等),本质上没有太大的区别,只要你选的框架文档齐全,还在持续更新,问题就不大。没人维护的框架不要选(特别要注意 GIT 上那些 Demo 类的框架,很容易误导人)
所有脚本化的自动化测试方案可以先放弃,后期维护超级麻烦,可以考虑平台化的接口自动化测试方案
建议 httprunner,入手门槛低