接口自动化测试-项目实战

什么是接口自动化测试:使用工具或代码代替人对接口进行测试

测试项目结构(python包)

1、接口api包  2、script:业务脚本  3、data:数据  4、config.py :配置文件  5、reporter:报告

错误问题:

1、未打印任何东西。添加pip install pytest

2、setup,teardown的问题

关于pytest使用setUp/tearDown提示错误: AttributeError: ‘TestLogin‘ object has no attribute ‘login_api‘_attributeerror: 'testlogin' object has no attribut-CSDN博客

3、合同新增业务

  1. 封装接口类
  2. 获取验证码接口
  3. 获取验证码中的uuid,传递给data
  4. 登录接口(登录接口类的实现,实例化对象,调用登录接口类实现用户登录,(!!data参数中关于uuid的部分)
  5. 实现课程添加接口对象的封装和调用(如何实现课程添加接口对登录接口的依赖)
  6. 上传合同(上传合同接口的实现,实例化对象,调用实现合同上传(!!:文件如何上传))
  7. 新增合同(新增合同接口的实现,实例化对象,调用接口实现合同新增)

4、登录单接口实现

        assert 200 == response.status_code
        assert "错误" in  response.text
        assert  500 == response.json().get('code')
  • 错误调试
 response = self.loginapi.post_login(test_data)

  • 测试数据参数化:导包,准备数据文件,在测试方法上面引用数据文件
import pytest
test_data =[
    ('admin', 'HM_2023_test', 200, '成功', 200),
    (" ", '123456',200,"失败", 500),
    ("jack666","123456",200,'错误',500),
]

 @pytest.mark.parametrize("username,password,status,message,code",test_data)
 def test01_login_success(self,username,password,status,message,code):
        test_data = {

            "username": username,
            "password": password,
            "code": "2",
            # 获得uuid的方法
            "uuid":TestLoginAPI.uuid
        }
        response = self.loginapi.post_login(test_data)
        assert status == response.status_code
        assert message in  response.text
        assert code ==response.json().get('code')
  • 数据驱动:以测试数据驱动脚本执行,维护焦点从脚本转向测试数据文件。导包import json->读取json文件,并保存为元组->测试数据驱动脚本执行

使用allure生成在线报告:

安装:
1.https://github.com/allure-framework/allure2/releases 下载 allure

2.解压缩安装包到一个不包含中文路径的目录

3.将压缩包内的 bin 目录配置到 path 系统环境变量

4.右键我的电脑-属性-高级设置-环境变量-找到系统环境变量的path项-增加 allure到bin目录

5.在命令行中输入 allure -version 命令,能显示allure版本信息,即为成功

6.在终端执行:pipinstall allure-pytest

7.在pycharm中下方控制台输入:1.pytest;2.运行allure命令生成测试报告 pytest allure serve report

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值