本篇文章主要介绍了"python学习笔记(接口自动化框架)",主要涉及到python,自动化方面的内容,对于Pythonjrs看球网直播吧_低调看直播体育app软件下载_低调看体育直播感兴趣的同学可以参考一下:
之前是利用python自带的unittest测试框架这次自己设计一个 之后再一点点往里面加功能(ps:当然这个框架真的是很简单。。很简单。。。很简单。。。) 1...
之前是利用python自带的unittest测试框架
这次自己设计一个 之后再一点点往里面加功能
(ps:当然这个框架真的是很简单。。很简单。。。很简单。。。)
1#!/usr/bin/env python 2# -*- coding: utf_8 -*- 3 4import xlrd
5import json
6 7 8class CreateExcel:
9def__init__(self):
10pass1112 @classmethod
13def open_excel(cls):
14 path = "testcase.xls"15 workbook = xlrd.open_workbook(path)
16 table = workbook.sheets()[0]
17return table
18# 获取sheet1920 @classmethod
21def get_nrows(cls, table):
22 nrows = table.nrows
23return nrows
24# 获取行号2526 @classmethod
27def get_name(cls, table, nrows):
28 testname = []
29for i in range(1, nrows):
30 testname.append(table.cell(i, 0).value)
31return testname
32# 获取用例name3334 @classmethod
35def get_data(cls, table, nrows):
36 testdata = []
37for i in range(1, nrows):
38 data = json.loads(table.cell(i, 1).value)
39 testdata.append(data)
40return testdata
41# 获取data接口参数4243 @classmethod
44def get_url(cls, table, nrows):
45 testurl = []
46for i in range(1, nrows):
47 testurl.append(table.cell(i, 2).value)
48return testurl
49# 获取接口测试url5051 @classmethod
52def get_method(cls, table, nrows):
53 testmethod = []
54for i in range(1, nrows):
55 testmethod.append(table.cell(i, 3).value)
56return testmethod
57# 获取接口测试method5859 @classmethod
60def get_pattern(cls, table, nrows):
61 testpattern = []
62for i in range(1, nrows):
63 testpattern.append(table.cell(i, 4).value)
64return testpattern
65# 获取接口期望响应结果6667 @classmethod
68def get_report(cls, table, nrows):
69 testreport = []
70for i in range(1, nrows):
71 testreport.append(table.cell(i, 5).value)
72return testreport
73# 获取用例期望的运行结果747576if__name__ == "__main__":
77 CreateExcel()
上面代码是处理excel文档的
下面代码是测试平台
1#!/usr/bin/env python 2# -*- coding: utf_8 -*- 3 4 5import requests
6import re
7from createexcel import CreateExcel
8 910class CreateTest:
11def__init__(self):
12pass1314 @classmethod
15def test_api(cls, method, url, data):
16global results
17if method == "post":
18 results = requests.post(url, data)
19if method == "get":
20 results = requests.get(url, data)
21return results
2223 @classmethod
24def test_on(cls):
25print"用例执行开始"2627 @classmethod
28def test_close(cls):
29print"用例执行结束"3031 @classmethod
32def test_result(cls, ra, rb):
33if ra == rb:
34print"测试结果: 测试通过"35else:
36print"测试结果: 测试失败"3738 @classmethod
39def test_http(cls, code):
40if code == 200:
41print"测试请求: 请求通过"4243 @classmethod
44def test_main(cls):
45global report
46 table = CreateExcel.open_excel()
47 nrows = CreateExcel.get_nrows(table)
48for i in range(0, nrows - 1):
49 testname = CreateExcel.get_name(table, nrows)[i]
50 testdata = CreateExcel.get_data(table, nrows)[i]
51 testurl = CreateExcel.get_url(table, nrows)[i]
52 testmethod = CreateExcel.get_method(table, nrows)[i]
53 testpattern = CreateExcel.get_pattern(table, nrows)[i]
54 testreport = CreateExcel.get_report(table, nrows)[i]
55 CreateTest.test_on()
56print"测试用例:", testname
57try:
58 testresults = CreateTest.test_api(testmethod, testurl, testdata)
59 CreateTest.test_http(testresults.status_code)
60 pattern = re.compile(testpattern)
61 match = pattern.search(testresults.url)
62if match.group() == testpattern:
63 report = "pass"64 CreateTest.test_result(testreport, report)
65except AttributeError:
66 report = "no"67 CreateTest.test_result(testreport, report)
68except Exception.__base__:
69print"测试请求: 请求失败"70 report = None
71 CreateTest.test_result(testreport, report)
72 CreateTest.test_close()
737475if__name__ == '__main__':
76 CreateTest()
以上就介绍了python学习笔记(接口自动化框架),包括了python,自动化方面的内容,希望对Pythonjrs看球网直播吧_低调看直播体育app软件下载_低调看体育直播有兴趣的朋友有所帮助。
本文网址链接:http://www.codes51.com/article/detail_670769.html