python里面用代码实现调用断言-小工具

(1)断言在python里面非常实用,首先来一些冗余代码。看加粗的部分:
import requests
from api.login_api import LoginApi
class TestLogin(object):
def test_login_success(self):
body = { “mobile”: “13800000023”,
“password”: “123456”}
resp = LoginApi.login(body)
print(resp.json())
# 断言
assert resp.status_code == 200
assert resp.json().get(“success”) == True
assert resp.json().get(“code”) == 10000
assert resp.json().get(“message”) == “操作成功!”

def test_login_tel_error(self):
url = “正确的网址”
headers = {“Content-Type”: “application/json”}
body = {
“mobile”: “10800000002”,
“password”: “123456”}
resp = requests.post(url, headers=headers, json=body)
print(resp.json())
# 断言
assert resp.status_code == 200
assert resp.json().get(“success”) == False
assert resp.json().get(“code”) == 20001
assert resp.json().get(“message”) == “用户名或密码错误”

def test_login_password_error(self):
url = “http://ihrm-test.itheima.net/api/sys/login”
headers = {“Content-Type”: “application/json”}
body = {
“mobile”: “13800000002”,
“password”: "123456789}
resp = requests.post(url, headers=headers, json=body)
print(resp.json())
# 断言
assert resp.status_code == 200
assert resp.json().get(“success”) == False
assert resp.json().get(“code”) == 20001
assert resp.json().get(“message”) == “用户名或密码错误”

从中可以看出 这里面的断言有12行 ,后期如果想要修改断言的结果的话,就要一条条修改。以后如果测试用例数多且量大的话,修改的工作量就会非常多。所以这里我们需要用到封装的思想。
!!!首先新建一个common_assert的包里面放common_assert的py文件,创建如下代码:
在这里插入图片描述
首先我们来分析下这几行代码的意思:
首先是定义这个断言,定义resp(结果)、status_code(状态码)、success(是否成功)、code(操作的状态码),有细心的小伙伴发现定义代码的self 没有了,因为这里的self如果加上的话,会默认当成一个参数,所以不能加上去。
后面四行的代码意思是断言这个结果的状态码等于预期结果,所以是status_code=status_code,后面的status_code是预期结果。
因此我们在原来的代码断言就需要修改成在这里插入图片描述

common_assert(resp,200,True,10000,”操作成功!”)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值