{eval=Array;=+count(Array);}
具体得视情况而定。
如果接口进行的是读操作,是不需要校验数据库的。
如果接口进行的是写操作,严谨的说是需要的,并且涉及的字段均需要校验。
接口进行读数据库操作,如GET方式,即查询,验证期望响应内容与实际响应内容,即验证了数据入库-数据查询流程,因此不需要校验数据库。当然,每次执行自动化是需要进行环境初始化,每次运行自动化用例前插入自动化测试数据,运行结束后清空自动化数据。
接口进行写数据库操作,如POST或DELETE方式,即写入/删除,一般除了验证期望响应结果与实际响应结果外,还需额外验证数据库是否真的进行了相关操作。因为接口返回结果并不能真实反映数据是否被写入或删除。
一般使用Sql验证,字段较多时,建议封装个方法,实现根据请求体拼接Sql功能,如下:
Select count(1) from tablename where field1 = value1 and field2 = value 2……
然后再封装数据库查询方法,验证count数量是否等于预期即可。
若对您有所帮助,欢迎大家评论、留言。
接口自动化测试,一般设计接口各种场景用例,校验返回值是否符合预期;接口测试,会去做字段缺失、为空、长度、字段类型等校验测试,接口测试更多关注了入参出参,其实也就间接测试了数据库表字段。
所以说,接口自动化不需要特意去关注数据库,Json数据一般来说通过XPath去取值校验,字段校验方式有等于、大于、小于、包含,还有字段长度类型及响应code等校验。另外需要和预期接口响应数据做个对比,如果字段key不同或者数量不同,标记失败,字段值不同也标记出来,不一定是失败
0
回答1
回答2
回答0
回答0
回答0
回答10
回答0
回答8
回答0
回答