python +request 之数据库断言

我们在做接口自动化的时候,到底要不要做数据库断言?

这个没有绝对的答案的,具体根据公司实际业务的需要来。

有条件的,有需求的,就可以加上数据库断言。

(我以前在外包公司待的时候,测试环境中的数据库访问都需要权限申请,层层审批,就没有做数据库断言)

首先:思路:做数据库断言,为了验证某个接口返回数据与数据库中的值是否一致。(例如:添加内容的接口,查询内容的接口)

通过sql语句,访问数据库,查询到对应的那个字段的值,通过assert比较,从而判断接口中的返回参数中的某个值是否正确。(或者,添加的接口内容是否成功存到数据库中)

或者,我们的接口是删除了某个值,数据库中对应的字段是否成功删除。

其次:我们要掌握如何用python 语法操作数据库。(以前我写过这类的博客),

网上转载一篇文章:

https://www.jianshu.com/p/4490957e29ad   详细介绍了

python3使用pymysql操作mysql

再次:在实际使用的时候,我们都会把操作数据库的方法封装成函数或者方法。(增删改查的函数)

 这只是简单的使用,临时写的一个函数,先执行两次sql命令,再执行查询。

前面的两个sql语句,可以是:增删改查中任意两种。最后返回查询的结果。

如果返回结果有很多条值,那么,我们可以进行切片,

最后,把切片后的值引入到unittest或者pytest接口自动化测试框架中,进行断言。

这样看来,数据库来断言接口测试,其实也不难。

写过一次就会了。

原文地址:https://www.cnblogs.com/star12111/p/15167170.html