1.个人情况:做测试了 4 年,还是 app 功能测试为主,用 apk 辅助测试,会用个 monkey,会用一些 ui 自动化的 api 入门,会做一些简单的压力测试。
2.现状:来到一个社区公司,维护接口自动化测试用例。之前没接触过也没写过,我 java 只会一个基础。端午节我拿到整体的代码和接口文档,看了一遍又一遍,没有思维,不知道从何入手,没接触过真个自动化项目的代码,一头雾水。
3.问题:我看得懂大部分,但是我自己去写,写不出来,没有思维,不知从何入手去维护现在的用例。各位学接口自动化的时候除了语言要学,还需要学哪些知识?怎么整合在一起去实践的?目前我在看 jsoup 去实现接口测试。
先从协议开始把,熟悉接口协议,可能看文档难以理解,可以抓包看看,对照文档就容易理解了。
先手工发报文,后续再用脚本做自动化。
最简单的思路:先会手工测试接口 然后再根据手工流程打造自动化程序。当然第一次做免不了推倒返工,不过不要怕,先做了再说,总比一直点点点强。
概括一下楼主的状态就是,拿到一个不懂的东西后就蒙蔽了。不知道从哪下手。
如何下手楼上的几位已经说的很多了。参考 7 楼和 9 楼
来到一个社区公司,维护接口自动化测试用例
就是说,现在已经有一套正常运转接口自动化测试的方案了?如果是这样的话,我建议先熟悉现有的测试方案,可以从用例的管理和维护,到接口测试的实现。熟悉后再进行优化或者扩展,甚至。。重构。。
各位学接口自动化的时候除了语言要学,还需要学哪些知识?怎么整合在一起去实践的?
说下自己的 web 接口自动化测试的学习经历,提供一些参考。
首先清楚接口测试的目的是什么?有目的性不会让自己在测试的过程中迷茫。
接口测试个人的理解是为了验证在 UI 层测试时,无法触及到的一些深层次的测试点,还是归结到 “功能测试”。保证后端或者外部提供的接口调用时的正确性,当然还可以做一些性能方面的测试。
为保证以上的接口测试目的性,需要业务验证,构造请求,断言响应,为满足以上 3 个需求,了解接口实现的业务,” 请求方法,请求参数。请求字段,通用字段,响应字段,响应解析等等 http 协议相关方面的知识,推荐可以看下《图解 HTTP》或《HTTP 权威指南》
了解基础知识后,需要知道接口如何工作的,例如前端的一个 submit 按钮,点击提交后调用http://www.xxxxx.com/api/case/add?data=response 给客户端。{}接口,会把用户录入的文字作为接口参数传递给服务器端程序,后端会对传递的参数处理后写入到数据库,并返回一个
找到一个接口自动化的工具,例如 python 中的 urllib,urllib2,requests(建议 requests),熟悉 requests 的文档。了解 api 的使用,例如 get,post,图片上传,流式上传,提交 cookies,会话对象等等。
最后就是所学在实际中使用,可以在平时生活中,练习爬虫,工作中,可以向开发要接口文档,自己尝试写下,不懂的随时问开发,大部分开发还是很乐意帮助的。
当然还有一些需要知道的,fiddler,chrome 开发着工具,firebug,数据库相关的等等。
以上就是最近接口测试中的一些总结,还有很多不足或遗漏的地方,大家一起努力。
按葫芦画瓢
接口主要起到一个承上启下的作用,所以测试也要分两方面进行:
然后要搞清楚测试接口协议,进行有针对性的用例设计,主要是对传入参数的类型,大小,范围等进行合理的变化(包括正常与异常数据),并验证返回类型与数据(包括异常处理),并适当增加一些安全性验证(比如 OAUTH2,这方面我了解不多,可以网上查下)。
模拟后端的时候,主要构建正常与异常的返回数据,验证前端的显示或对异常返回数据的处理是否得当(通常这方面很少有文档提前定义过,多半要靠经验)。
对于工具的选择,可以是自己直接写代码,也可以用一些工具:
DHC Client: https://dhc.restlet.com/
Runscope: https://www.runscope.com/
Postman: http://www.getpostman.com/
PingAPI: https://ping-api.com/
另外我记得社区里是有接口测试的视频的,很不错的可以去看看。
大而全的问题真不知道咋回答。。。坐等大神来
迷茫的时候多看看书,多多思考。
#3 楼 @lamianxiaodian 补充: 搭建开发环境时,新建一个 java 项目,如果开发接口是 jar 包,就引入开发的包。如果是 http 接口,就引入 httpclient 等包,封装 http 请求。具体用法可以上网查。
—— 来自 TesterHome 官方 安卓客户端
1.先写测试用例 2.学习 junit 3.学习 java,搭建开发环境。4.用 junit 写一条自动化用例 5. 运行起来。
—— 来自 TesterHome 官方 安卓客户端
额。。只有问题。我想请问的是你学这些目的是什么?or 这个帖子你提出这个问题目的是什么?
我,我是新来的菜鸟,我就看看(帮不了忙)…
—— 来自 TesterHome 官方 安卓客户端