unittest学习之yaml文件读取学习

本文介绍了YAML文件的格式注意事项,包括字符串处理、冒号后的空格、整体性以及数据分组。同时,针对测试用例命名的特殊要求,即必须以'test'开头和结尾,以便能被正确识别为测试用例,进行了说明。代码示例展示了如何读取YAML文件并进行测试验证,其中包括登录和注册两个测试模块。
摘要由CSDN通过智能技术生成

一、yaml文件格式注意事项
1、字符串不需要用引号
2、冒号两边最好要有空格
3、只能返回一个整体

demo:
	model:登录
	data:
		username:ww
		pwd:123

4、或者每组数据用‘-’隔开,一个-就是一组数据

-
  model: 注册模块
  title: 注册成功
  url: http://api.nnzhp.cn/api/user/user_reg
  method: POST
  data:
    username: yingcr10
    pwd: Ace123456
    cpwd: Ace123456
  check:
    error_code: 0
    msg: 注册成功!
-
  model: 注册模块
  title: 用户名长度小于6位,注册失败
  url: http://api.nnzhp.cn/api/user/user_reg
  method: POST
  data:
    username: yingc
    pwd: Ace123456
    cpwd: Ace123456
  check:
    error_code: 3002

二、读取完后,运行出错,经排查居然是因为用例名称命名的问题
读取yaml文件必须是test开头,测试用例必须是test结尾???现在还搞不清楚啥原因!难道是只有这样才能当成一个测试用例?
代码如下:

@ddt
class MyddtTest(unittest.TestCase):
    #读取yaml文件后进行测试验证
    @file_data("../data/get_token.yaml")
    def test_get_yaml(self,model,title,url,method,params,expect_errcode):
        model = model
        title = title
        url = url
        method = method
        params = params
        expect_errcode = expect_errcode
        print(model,title,url,method,params,expect_errcode,sep='\n')
        self.login_test(model,title,url,method,params,expect_errcode)

    def login_test(self,model,title,url,method,params,expect_errcode):
        print("测试模块:",model)
        print("测试标题:",title)

        res = requests.request(method=method,url=url,params=params).text
        res = json.loads(res)
        try:
            # 通过断言,判断测试是否通过
            assert expect_errcode == res['errcode']
            print("测试通过")
        except Exception as e:
            print("测试失败")
            raise e

if __name__ == '__main__':
    unittest.main()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值