想学接口自动化测试,不会搭建框架怎么行?!

1.项目整体结构如下图

想学接口自动化测试,不会搭建框架怎么行?!_第1张图片

2.配置如下

# -*- coding: utf-8 -*-[HTTP]scheme = httpbaseUrl = 127.0.0.1port = 8888timeout = 10.0[USER]username = adminpassword = 123456[EMAIL]on_off = offtitle = 接口自动化测试报告message = 这是今天的测试报告,请查收!password = 1221421dfadfdreceiver = test.qq.comserver = smtp.qq.comsender = test.qq.com

3.测试服务api,test_api.py如下

import jsonimport flaskfrom flask import request# 创建一个服务,把当前这个python文件当做一个服务server = flask.Flask(__name__)@server.route('/auth/login', methods=['get', 'post'])def login():    username = request.values.get('username')    password = request.values.get('password')    if username and password:        if username == 'admin' and password == 'e10adc3949ba59abbe56e057f20f883e':            response = {'code': 200, 'msg': '登录成功', 'data': {'token': '5ffccad5-b06e-4f20-a88e-0d4d31c0ab8d'},                        'userInfo': {'sex': '女', 'age': 25}}        elif username == 'zsy' and password == 'e10adc3949ba59abbe56e057f20f883e':            response = {'code': 200, 'msg': '登录成功', 'data': {'token': '3ffccad5-b06e-4f20-a88e-0d4d31c0ab8d'},                        'userInfo': {'sex': '男', 'age': 23}}        else:            response = {'code': 401, 'msg': '账号密码错误', 'userInfo': {}}    else:        response = {'code': 400, 'msg': '参数不能为空', 'userInfo': {}}    response = json.dumps(response, ensure_ascii=False)    print(response)    return response@server.route('/statistics/homePage', methods=['get'])def homePage():    token = request.headers.get('Authorization')    if token == 'Bearer 5ffccad5-b06e-4f20-a88e-0d4d31c0ab8d':        response = {'code': 200, 'msg': 'success', 'pageInfo': {'title': '欢迎您'}}    elif token == 'Bearer 3ffccad5-b06e-4f20-a88e-0d4d31c0ab8d':        response = {'code': 403, 'msg': '权限不足', 'pageInfo': {}}    else:        response = {'code': 401, 'msg': '未授权'}    response = json.dumps(response, ensure_ascii=False)    print(response)    return responseif __name__ == '__main__':    server.run(debug=True, port=8888, host='127.0.0.1')

4.测试用例如下

import unittestfrom src.api.loginApi import LoginClientclass TestLogin(unittest.TestCase):    def setUp(self):        self.client = LoginClient()    def test_login_success(self):        """登录成功"""        self.client.login('admin', '123456')        self.assertEqual(200, self.client.code)    def test_login_error(self):        """登录失败"""        self.client.login('admin', '111')        self.assertEqual(400, self.client.code)    def test_login_null(self):        """参数为空"""        self.client.login()        self.assertEqual(400, self.client.code)if __name__ == '__main__':    unittest.main()import jsonimport unittestfrom parameterized import parameterizedfrom src.api.loginApi import LoginClientfrom src.common.readExcel import ReadExcellogin_xls = ReadExcel().get_xls('loginCase.xlsx', 'login')class TestUserLogin(unittest.TestCase):    def setUp(self):        self.client = LoginClient()    @parameterized.expand(login_xls)    def test_login(self, case_name, query):        self.checkResult(case_name, query)    def tearDown(self):        pass    def checkResult(self, case_name, query):  # 断言        """        check test result        :return:        """        client = self.client        query = json.loads(query)        client.requestBody = query        client.login()        if case_name == 'login':  # 如果case_name是login,说明合法,返回的code应该为200            self.assertEqual(200, client.code)        if case_name == 'login_error':  # 同上            self.assertEqual(400, client.code)        if case_name == 'login_null':  # 同上            self.assertEqual(400, client.code)if __name__ == '__main__':    unittest.main()

5.html报告如下

想学接口自动化测试,不会搭建框架怎么行?!_第2张图片

6.日志打印如下

想学接口自动化测试,不会搭建框架怎么行?!_第3张图片

最后

资源分享

下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】

面试资料

我们学习软件测试必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作

​这些资料,对于想进阶【自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…….基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等配套学习资源在下方

你可能感兴趣的:(技术分享,软件测试,自动化测试,python,后端,自动化测试,测试工程师,软件测试)