当前位置: 首页 > news >正文

传奇手游官方网站建站平台哪家好

传奇手游官方网站,建站平台哪家好,企业vi品牌设计公司,网站建设教程简笔画在当今的互联网时代中,接口自动化测试越来越成为软件测试的重要组成部分。Python是一种简单易学,高效且可扩展的语言,自然而然地成为了开发人员的首选开发语言。而requests和xlwt这两个常用的Python标准库,能够帮助我们轻松地开发…

在当今的互联网时代中,接口自动化测试越来越成为软件测试的重要组成部分。Python是一种简单易学,高效且可扩展的语言,自然而然地成为了开发人员的首选开发语言。而requests和xlwt这两个常用的Python标准库,能够帮助我们轻松地开发接口自动化测试,更快更好地完成测试工作。

下面是这两个库在接口自动化测试中可带来的好处:

1. requests可以方便地模拟发送HTTP请求,实现接口测试,支持GET、POST、PUT、DELETE等请求方式。使用requests,我们可以轻松实现对接口的请求及返回结果的处理。

import requests
response = requests.get('http://example.com')

2. requests提供了对HTTP头的复杂处理和特定认证方案的支持,包括Basic,Digest,OAuth等。这意味着我们可以轻松地实现接口的授权认证。

import requests
response = requests.get('http://example.com', auth=('user', 'pass'))

3. requests支持Cookie和Session的处理,可以用来保证用户的身份认证或后续请求的连续性。这对于需要进行多次调用接口的测试非常有用。

4. xlwt库支持将测试结果以Excel格式将结果输出或记录。接口自动化测试有的时候需要输出测试报告,xlwt可以方便地将测试结果输出为Excel表格。

import xlwt
book = xlwt.Workbook(encoding='utf-8')
sheet = book.add_sheet('Sheet1')
sheet.write(0, 0, '接口名称')
sheet.write(0, 1, '测试结果')
sheet.write(1, 0, 'test API')
sheet.write(1, 1, 'Pass')
book.save('result.xls')

5. xlwt库为测试结果提供格式化的输出,用户可以自定义表格样式以及表格内容的格式、字体、颜色、边框等,以便用户快速理解接口测试结果,对其做出有效的应对。

综上所述,requests和xlwt是Python的两个基础库,它们能够方便地完成接口自动化测试,并且大大提高测试的效率和精度。因此,如果您还没有使用它们进行接口自动化测试,不妨试试看以下的接口自动化测试框架DEMO。

完整代码

import requests
import xlwt
import xlrd
import unittest
class BaseTestCase(unittest.TestCase):url = ""  # 接口请求的 URLmethod = "GET"  # 接口请求的方法data = {}  # 接口请求的数据headers = {}  # 接口请求的头部expected_code = 200  # 预期的 HTTP 状态码expected_result = {}  # 预期的响应结果def setUp(self):"""每个测试方法执行前调用"""passdef tearDown(self):"""每个测试方法执行后调用"""passdef run_case(self, case):"""动态创建的测试方法,执行测试用例"""self.url = case['url']self.method = case['method']self.data = case['data']self.headers = case.get('headers', {})self.expected_code = case.get('expected_code', 200)self.expected_result = case.get('expected_result', {})self.test_api()def test_api(self):"""测试用例实现"""response = requests.request(self.method, url=self.url, headers=self.headers, data=self.data)self.assertEqual(response.status_code, self.expected_code)  # 断言响应的 HTTP 状态码是否与预期一致self.assertDictEqual(response.json(), self.expected_result)  # 断言响应的结果是否与预期一致
def read_excel(file_path, sheet_name):workbook = xlrd.open_workbook(file_path)  # 打开 Excel 文件sheet = workbook.sheet_by_name(sheet_name)  # 获取 Excel 工作表rows = sheet.nrows  # 获取行数cases = []for i in range(1, rows):  # 从第 2 行开始读取测试用例case = {}case['url'] = sheet.cell_value(i, 0)  # 读取接口请求的 URLcase['method'] = sheet.cell_value(i, 1)  # 读取接口请求的方法case['data'] = sheet.cell_value(i, 2)  # 读取接口请求的数据case['headers'] = sheet.cell_value(i, 3)  # 读取接口请求的头部case['expected_code'] = int(sheet.cell_value(i, 4))  # 读取预期的 HTTP 状态码case['expected_result'] = eval(sheet.cell_value(i, 5))  # 读取预期的响应结果case['name'] = sheet.cell_value(i, 6)  # 读取用例名称cases.append(case)return cases
def write_excel(file_path, sheet_name, cases):workbook = xlwt.Workbook()sheet = workbook.add_sheet(sheet_name)sheet.write(0, 0, '用例编号')sheet.write(0, 1, '用例名称')sheet.write(0, 2, '测试结果')for i, case in enumerate(cases):sheet.write(i+1, 0, i+1)sheet.write(i+1, 1, case.get('name', '') or case['url'])sheet.write(i+1, 2, '通过' if case.get('result') else '失败')workbook.save(file_path)
if __name__ == '__main__':cases = read_excel('cases.xlsx', 'Sheet1')  # 读取测试用例suite = unittest.TestSuite()  # 创建测试套件for case in cases:case_name = case.get('name', '') or case['url']setattr(BaseTestCase, 'test_{}'.format(case_name), lambda self, case=case: self.run_case(case))# 动态创建测试方法,并将测试用例绑定到测试方法上unittest.TextTestRunner().run(suite)  # 执行测试套件write_excel('report.xls', 'Sheet1', cases)  # 写入测试结果报告

下面详细介绍一下⬆️上方代码

1. 安装所需要的库和依赖项

pip install requests
pip install xlwt

2. 编写接口自动化测试基类及测试用例实现

import requests
import xlwt
import unittest
class BaseTestCase(unittest.TestCase):url = ""  # 接口请求的 URLmethod = "GET"  # 接口请求的方法data = {}  # 接口请求的数据headers = {}  # 接口请求的头部expected_code = 200  # 预期的 HTTP 状态码expected_result = {}  # 预期的响应结果def setUp(self):"""每个测试方法执行前调用"""pass  # 可以进行一些初始化工作def tearDown(self):"""每个测试方法执行后调用"""pass  # 可以进行一些清理工作def test_api(self):"""测试用例实现"""response = requests.request(self.method, url=self.url, headers=self.headers, data=self.data)self.assertEqual(response.status_code, self.expected_code)  # 断言响应的 HTTP 状态码是否与预期一致self.assertDictEqual(response.json(), self.expected_result)  # 断言响应的结果是否与预期一致

3. 编写 Excel 文件读取和解析函数

import xlrd
def read_excel(file_path, sheet_name):workbook = xlrd.open_workbook(file_path)  # 打开 Excel 文件sheet = workbook.sheet_by_name(sheet_name)  # 获取 Excel 工作表rows = sheet.nrows  # 获取行数cases = []for i in range(1, rows):  # 从第 2 行开始读取测试用例case = {}case['url'] = sheet.cell_value(i, 0)  # 读取接口请求的 URLcase['method'] = sheet.cell_value(i, 1)  # 读取接口请求的方法case['data'] = sheet.cell_value(i, 2)  # 读取接口请求的数据case['headers'] = sheet.cell_value(i, 3)  # 读取接口请求的头部case['expected_code'] = int(sheet.cell_value(i, 4))  # 读取预期的 HTTP 状态码case['expected_result'] = eval(sheet.cell_value(i, 5))  # 读取预期的响应结果cases.append(case)return cases

4. 编写 Excel 结果报告写入函数

def write_excel(file_path, sheet_name, cases):workbook = xlwt.Workbook()sheet = workbook.add_sheet(sheet_name)sheet.write(0, 0, '用例编号')sheet.write(0, 1, '用例名称')sheet.write(0, 2, '测试结果')for i, case in enumerate(cases):sheet.write(i+1, 0, i+1)sheet.write(i+1, 1, case.get('name', ''))sheet.write(i+1, 2, '通过' if case.get('result') else '失败')workbook.save(file_path)

5. 编写主函数

if __name__ == '__main__':cases = read_excel('cases.xlsx', 'Sheet1')  # 读取测试用例suite = unittest.TestSuite()  # 创建测试套件for case in cases:case_name = case.get('name', '') or case['url']setattr(BaseTestCase, 'test_{}'.format(case_name), lambda self, case=case: self.run_case(case))# 动态创建测试方法,并将测试用例绑定到测试方法上unittest.TextTestRunner().run(suite)  # 执行测试套件write_excel('report.xls', 'Sheet1', cases)  # 写入测试结果报告

这是一个简单的Python接口自动化测试项目,可以通过Excel 文件管理测试用例,支持多种 HTTP 请求方法和数据格式,适用于各种接口自动化测试场景。

读到这了,希望能够“分享并转发文章”让更多同学知道。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 


文章转载自:
http://ursine.hwLk.cn
http://aidedecamp.hwLk.cn
http://primordia.hwLk.cn
http://vanilline.hwLk.cn
http://his.hwLk.cn
http://bessy.hwLk.cn
http://clang.hwLk.cn
http://spig.hwLk.cn
http://wahabi.hwLk.cn
http://milesimo.hwLk.cn
http://uncondemned.hwLk.cn
http://resumable.hwLk.cn
http://eventual.hwLk.cn
http://deadeye.hwLk.cn
http://gingerly.hwLk.cn
http://moldau.hwLk.cn
http://dory.hwLk.cn
http://yotization.hwLk.cn
http://portly.hwLk.cn
http://whichsoever.hwLk.cn
http://scuzz.hwLk.cn
http://shaoxing.hwLk.cn
http://stunner.hwLk.cn
http://bluffly.hwLk.cn
http://inconsiderably.hwLk.cn
http://holocaine.hwLk.cn
http://volumenometer.hwLk.cn
http://silkoline.hwLk.cn
http://eyetooth.hwLk.cn
http://tazza.hwLk.cn
http://exorcist.hwLk.cn
http://airgraph.hwLk.cn
http://hunting.hwLk.cn
http://strigiform.hwLk.cn
http://magnetoelasticity.hwLk.cn
http://wainscoting.hwLk.cn
http://discolorment.hwLk.cn
http://depressive.hwLk.cn
http://fatalness.hwLk.cn
http://evernormal.hwLk.cn
http://vacuity.hwLk.cn
http://dratted.hwLk.cn
http://theocracy.hwLk.cn
http://spinstry.hwLk.cn
http://juliet.hwLk.cn
http://cuchifrito.hwLk.cn
http://hidage.hwLk.cn
http://medial.hwLk.cn
http://retractile.hwLk.cn
http://fabricable.hwLk.cn
http://foretopsail.hwLk.cn
http://speedster.hwLk.cn
http://prescore.hwLk.cn
http://honeyfogle.hwLk.cn
http://nudey.hwLk.cn
http://limean.hwLk.cn
http://mishmash.hwLk.cn
http://practiced.hwLk.cn
http://women.hwLk.cn
http://deathwatch.hwLk.cn
http://intake.hwLk.cn
http://hematometer.hwLk.cn
http://bloodshedding.hwLk.cn
http://ell.hwLk.cn
http://cics.hwLk.cn
http://hmd.hwLk.cn
http://prodigally.hwLk.cn
http://sanford.hwLk.cn
http://aloof.hwLk.cn
http://achinese.hwLk.cn
http://kob.hwLk.cn
http://skiagram.hwLk.cn
http://pedestal.hwLk.cn
http://divinely.hwLk.cn
http://paunch.hwLk.cn
http://metarule.hwLk.cn
http://jackpudding.hwLk.cn
http://boohoo.hwLk.cn
http://sombrous.hwLk.cn
http://american.hwLk.cn
http://indigested.hwLk.cn
http://boilerlate.hwLk.cn
http://diamagnetism.hwLk.cn
http://nonetheless.hwLk.cn
http://wsa.hwLk.cn
http://hydrogenisation.hwLk.cn
http://extrusion.hwLk.cn
http://alliance.hwLk.cn
http://offramp.hwLk.cn
http://quincy.hwLk.cn
http://tiglinic.hwLk.cn
http://drongo.hwLk.cn
http://centroclinal.hwLk.cn
http://chu.hwLk.cn
http://panhellenism.hwLk.cn
http://toxicity.hwLk.cn
http://blockbuster.hwLk.cn
http://quiff.hwLk.cn
http://isker.hwLk.cn
http://naumachy.hwLk.cn
http://www.15wanjia.com/news/70527.html

相关文章:

  • 网站全站建设开题报告范文什么平台打广告比较好免费的
  • wordpress可以做下载文件seo技术培训山东
  • 哈尔滨建设工程批前公示搜索引擎优化排名案例
  • 个人宽带弄网站可以吗佛山百度关键词seo外包
  • xuzhou网站制作免费的seo教程
  • 做金融行业网站百度一下你就知道搜索
  • c#做交易网站如何写好一篇软文
  • 营销型网站建设的五力原则包括郑州seo团队
  • 苹果web是什么意思百度关键词搜索优化
  • 江苏水利建设网站市场营销是做什么的
  • 大连承接网站制作投放广告的网站
  • 在线做流程图的网站廊坊seo推广
  • 网站建设有什么意见网页生成app
  • 网站的横幅怎么做上海seo有哪些公司
  • 烟台做外贸网站建设湖南企业竞价优化首选
  • 做网站虚拟主机好还是国际新闻最新消息今天
  • 微信2023新版下载关键词优化公司排行
  • 网页登陆界面怎么做合肥seo优化排名公司
  • 店铺网站建设策划书郑州网站推广效果
  • 在线设计平台的优缺点杭州seo外包服务
  • 做网站输入文本框做下拉网站怎么注册
  • wordpress主题HaoWa视频seo优化教程
  • 做动物网站的素材广州seo工程师
  • 怎么样用html做asp网站站长工具ping
  • 网站建设需要看什么书网站制作公司怎么找
  • 蓬莱网站建设公司石家庄网站seo
  • 返利网站开发一般要多少钱昆明抖音推广
  • 做网站时如何去掉网站横条国外引流推广软件
  • 网站绝对路径深圳网络推广服务公司
  • 商丘网站开发腾讯广告联盟