四种方式包括 POST、DELETE、PUT、GET,对应的功能是增、删、改、查。
POST:向指定资源提交数据进行处理请求。
url 格式:http://IP:port/xx
测试数据格式:{aa:11,bb:‘BB’}
详情参考前面的文章
https://testerhome.com/topics/10714
PUT:向指定资源位置上传其最新内容。
url 格式:http://IP:port/xx/id}{
测试数据格式:{aa:11,bb:‘BB’}
测试用例写在 excel 里面,第一列是编号,第二列到倒数第 7 列是填写的测试数据,
最后五列分别是用例描述,提交数据,结果返回,预期结果,实际结果,是否一致。
其作用:
用例描述:描述这条用例的设计的意义
提交数据:记录由测试数据转换成的 json 字符串,
结果返回:记录的接口提交测试数据后所返回的结果
预期结果:用例的预期,是通过还是不通过
实例结果:测试后,该用例是否通过
是否一致:预期结果与实际结果是否一致
使用 zip 函数,将列表的 dataresult 的第 1 项 (name、remark、type) 与第 2、3、...、最后 项的数据合并起来,以字典的形式放入列表 result 中。
最后将列表 result 中的每一条数据写到 txt 文件中
涉及操作文件:
1:保存测试用例的 excel 文件
2:保存每条测试数据转换成 json 格式的 txt 文件
涉及方法 changDataToJson()
因为 put 方式的提交格式是http://IP:port/xx/id
所有 url 必须加上 id 值
原用例
结果文件
获取结果返回信息
如果返回信息中含有 “true”,实际结果项写入 “pass”
如果返回信息中含有 “false”,实际结果项写入 “no pass”
实例化类 getExcelData,
调用方法 getData2
获取原用例文件中,预期列的所有数据,并保存在列表 expect
类 getExcelData 相关代码
将预期结果与实际结果对比,如一致,写入 “是”,否则,写入 “否”
将每个模块的接口及对应用例文件等信息都记录在一个汇总的 Excel 文件中
读取每一列信息,并保存到对应列表中
DELETE:删除指定资源
格式:http://IP:port/xx/id}{
编号:用例编号
模块:该接口属于系统的模块项
接口描述:该接口 url 的作用
接口:提交系统的接口 url
描述:该用例的意义
预期:提交接口 url 后,指定的记录能否成功删除
涉及 sql 语句:能够在数据库查询到对应资源的 sql 语句
测试前判断:提交接口 url 前,执行 sql 语句,判断该资源是否存在
返回:提交接口 url 后,系统返回的信息
测试后判断:提交接口 url 后,再次执行 sql 语句,判断该资源是否存在
实际:判断是否成功删除
是否一致:判断预期结果是实际结果是否一致
类 sqlHelper_get 的方法 getCount,以 sql 语句为参数进行查询,并返回结果记录数
类 getExcelSql 的方法 runSql,读取用例文件的指定 sql 语句列的内容,并存放到列表 sql 中
实例化类 sqlHelper_get,并且以列表 sql 中的每个元素为参数,调用方法 getCount,
每一次调用方法后的返回结果,保存在列表 result 中
类 request_delete 的方法 isExist,
实例化类 getExcelSql,并且以用例文件为参数调用 runSql
将返回结果保存到列表 sqlresult 中
将列表 sqlresult 中元素依次写入新文件中,如果元素为 0,写入 “记录不存在”,否则,写入 “存在记录”
新文件内容如下
类 getExcelData 的方法 getData2,获取指定 Excel 文件指定列的内容,并存放到列表中
类 request_delete 的方法 run_test
实例化类 getExcelData,并且调用方法 getData2,获取用例文件的第四列数据(接口 url),并存放到列表 url 中。
依次提交列表 url 的每一个元素,并记录返回信息
提交接口 url 后,再查询 sql,查询记录是否存在,结果保存在 sqlresult
列表中
获取第六列与第八列的数据,分别保存在列表 expect 与 before 中
将返回信息写入
如果执行 SQL 后,查无记录,则写入 “记录不存在”;反之,写入 “记录存在”
判断实际情况
1:如果在提交接口 url 前,执行 sql 并查无记录的话,写入 “无法删除”(本来就没有那条记录)
2:如果分别在提交接口 url 前后,执行 sql 并查有记录的话,写入 “无法删除”(执行删除接口后,记录依旧存在,删除功能出 bug)
3:提交接口 url 前,执行 sql 并查有记录;执行接口 url 后,执行 sql 并查无记录的话,写入 “成功删除”(删除前,存在记录,删除后,记录不存在)
将预期结果与实际结果对比,如果一致,则 “是否一致” 项写入 “是”;
反之,写 “否”
最后将内容另存到新文件
最终结果文件
GET:向指定位置获取资源
格式:http://IP:port/xx?(参数)
编号:用例编号
模块:该接口属于系统的模块项
接口描述:该接口 url 的作用
接口:提交系统的接口 url
参数:接口提交的参数,如果是 0,提交时不需要提交参数
描述:该用例的意义
涉及 sql 语句:能够在数据库查询到对应条件的 sql 语句
数据库查询总数:执行 sql 语句后,数据库返回的记录数
实际结果返回:提交接口 url 后,系统返回的信息
实际查询总数:提交接口所返回的记录数
是否一致:查询数据库的结果与提交接口系统返回的结果对比
略,参考前面
略,参考前面
类 sqlHelper_get 的方法 getCount,以 sql 语句为参数进行查询,并返回结果记录数
类 getExcelSql 的方法 runSql,读取用例文件的指定 sql 语句列的内容,并存放到列表 sql 中
实例化类 sqlHelper_get,并且以列表 sql 中的每个元素为参数,调用方法 getCount,
每一次调用方法后的返回结果,保存在列表 result 中
将查询数据库的结果与接口提交参数后系统返回的结果做对比
如果一致,“是否一致” 项写 “是”,反之,写 “否”
最终结果展示