当前位置: 首页 > news >正文

网站建设 核算网络服务商主要包括哪些

网站建设 核算,网络服务商主要包括哪些,自动化系统网站建设,做网站和微信小程序目录 1. 响应进行断言 1.1 在yaml用例中写入断言内容 1.2 封装断言方法 1.3 在执行流程中加入断言判断内容 2. 数据库数据断言 2.1 在yaml用例中写入断言内容 2.2 连接数据库并封装执行sql的方法 2.3 封装后校验方法是否可执行 2.4 使用之前封装的断言方法&#xff0c…

目录

1. 响应进行断言

1.1 在yaml用例中写入断言内容

1.2 封装断言方法

1.3 在执行流程中加入断言判断内容

2. 数据库数据断言

2.1 在yaml用例中写入断言内容

2.2 连接数据库并封装执行sql的方法

2.3 封装后校验方法是否可执行

2.4 使用之前封装的断言方法,加入数据库的case


1. 响应进行断言

1.1 在yaml用例中写入断言内容

validate:equals: # 相等断言断言状态码为200: [200,status_code] # [预期结果,实际结果]contains: # 包含断言断言响应结果包含access_token: [access_token,json]

1.2 封装断言方法

class AssertUtil:def assert_all_case(self,res,assert_type,value):# 深拷贝响应结果resnew_res = copy.deepcopy(res)# 把json()方法变更为json属性,用于反射使用,如果无法获取到new_res.json()抛出异常try:new_res.json = new_res.json()except Exception:new_res.json = {"msg":'response not json data'}# 循环判断断言for msg,data in value.items(): # 这里的value值就是断言的value值yq,sj = data[0],data[1] # 将预期值和实际值取出来# 过反射获取属性的值try:sj_value = getattr(new_res,sj) # 将获取到的响应结果反射给sjexcept Exception:sj_value = sj# 判断断言match assert_type:case "equals":assert yq == sj_value,msgcase "contains":assert yq in sj_value,msg

1.3 在执行流程中加入断言判断内容

def stand_case_flow(caseinfo):# 读取yaml文件中的数据case_obj = verify_yaml(caseinfo)# 请求之后得到响应后判断是否需要断言,如果validate不为None,则需要断言if case_obj.validate: # 这里可以将yaml中的validate内容取出来for assert_type,value in ExtractUtil().use_extract_value(case_obj.validate).items():AssertUtil().assert_all_case(res,assert_type,value)else:print("该用例没有涉及断言内容")

结果示例-断言失败

结果示例-断言成功

 

2. 数据库数据断言

2.1 在yaml用例中写入断言内容

validate:db_contains: # 数据库包含断言断言返回结果包含sql查询结果: ["SELECT email FROM pw_user WHERE uid = 1",text]

2.2 连接数据库并封装执行sql的方法

class AssertUtil:# 连接数据库def conn_mysql(self):self.conn = pymysql.connect(user="user",password="pwd",host="127.0.0.1",database="sd",port=3306)return self.conn# 执行sql语句def execute_sql(self,sql):# 创建数据库链接conn = self.conn_mysql()# 创建游标cs = conn.cursor()# 执行SQLcs.execute(sql)# 取值value = cs.fetchone()# 关闭资源cs.close()conn.close()# 返回值return value

2.3 封装后校验方法是否可执行

if __name__ == "__main__":a = AssertUtil().execute_sql("SELECT email FROM pw_user WHERE uid = 1")print(a)print(type(a))

执行结果

2.4 使用之前封装的断言方法,加入数据库的case

def assert_all_case(self,res,assert_type,value):# 深拷贝响应结果resnew_res = copy.deepcopy(res)# 把json()方法变更为json属性,用于反射使用,如果无法获取到new_res.json()抛出异常try:new_res.json = new_res.json()except Exception:new_res.json = {"msg":'response not json data'}# 循环判断断言for msg,data in value.items():yq,sj = data[0],data[1] # 将预期值和实际值取出来# 过反射获取属性的值try:sj_value = getattr(new_res,sj)except Exception:sj_value = sj# 判断断言match assert_type:case "equals":assert yq == sj_value,msgcase "contains":assert yq in sj_value,msgcase "db_contains":yq_value = self.execute_sql(yq)  # 将预期值的sql写入执行sql的方法中,获取结果assert yq_value[0] in sj_value, msg  # 注意这里的yq_value获取到的是tuple,需要通过下标取值str

结果示例-断言失败

http://www.yayakq.cn/news/521738/

相关文章:

  • 汕头网站制作公司价格济南网站开发公司
  • 招远做网站哪家好诸城网站建设葛小燕
  • 个人网站需要什么页面新建站点步骤
  • 怎么样给一个网站做自然排名网站建设客户功能详细要求
  • 网站建设 中中山开发公司
  • 北京高端网站制作医学类的网站做Google
  • 青海网站seo怎样自己开网站赚钱
  • 合肥公司制作网站的设计方案介绍
  • 小吃店网站建设仪征市建设工程网站
  • 上海有名的做网站的公司wordpress 登录后台
  • 注册域名怎么建设网站知道创宇 wordpress
  • discuz蓝色城市门户论坛网站模板wordpress 微博】
  • 简述网站建设基本过程wordpress虚拟币接口
  • 小红书网页版班级优化大师免费下载安装
  • 上海企业网站的建设公司网站实名认证
  • 轻应用网站模板设计师网址导航官网入口
  • 福州营销网站建设老品牌大岭山镇做网站
  • 南通网站定制pic cms图片网站管理系统手机版
  • html网站怎么做的新浪如何上传wordpress
  • 动漫短视频怎么制作教程seo排名关键词点击
  • 个人网站建设与实现毕业设计哪一个网站有做实验的过程
  • 网站开发详细流程图祝贺职业教育网站上线
  • 怎么优化网站关键字泰安网站开发制作公司
  • 网站 尺寸北京软件开发培训班
  • 建设集约化网站的进展情况最新款淘宝客源码整网站程序模板+后台带自动采集商品功能带文章
  • html企业网站模板下载有域名后怎么建网站
  • 网站建设的讲话稿微信商城平台开发
  • 建设部网站官工程质量手册网页版式设计分析
  • 好网站建设公司选择哪家好什么是门户
  • 深圳做网站推荐哪家公司做网站的主题有哪些