软件测试技术与项目实践 课件 第6章 Python接口自动化测试_第1页
软件测试技术与项目实践 课件 第6章 Python接口自动化测试_第2页
软件测试技术与项目实践 课件 第6章 Python接口自动化测试_第3页
软件测试技术与项目实践 课件 第6章 Python接口自动化测试_第4页
软件测试技术与项目实践 课件 第6章 Python接口自动化测试_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第6章Python接口自动化测试教师:1requests库32合同管理系统接口自动化测试pytest框架与allure插件提升测试效率接口自动化测试通过快速执行测试用例,显著减少测试时间,从而提高整体测试效率。在软件开发周期中,自动化测试允许团队在较短的时间内覆盖更多的测试场景,加速产品迭代速度。降低测试成本自动化测试减少了对手动测试的依赖,从而降低了人力成本。特别是在回归测试时,自动化测试可以大幅度减少人工介入,使得测试团队能够将精力集中在更复杂的测试任务上。提高测试覆盖率和准确性自动化测试能够系统地覆盖大量测试用例,提高测试覆盖范围,同时避免了人为因素导致的测试误差,确保了测试结果的稳定性和可靠性。接口自动化测试的重要性测试流程:分析文档、设计用例、数据准备、编写脚本、执行步骤、断言结果python+requests+pytest+allure+yaml+logging+jenkins接口自动化测试的实现方法Requests库是一个简单易用的HTTP客户端库,提供了发送各种HTTP请求的方法。用来发送GET、POST等请求,并处理服务器的响应数据。Requests库01Pytest是一个灵活且功能强大的测试框架,支持测试用例的组织、执行和管理,并且具有插件化设计,方便功能扩展,简化测试流程,提高测试的可维护性。Pytest框架02Allure是一个测试报告生成工具,可以生成详细的测试结果展示和统计信息。为接口自动化测试生成直观、可视化的报告,便于分析测试结果和跟踪测试进度。Allure测试报告036.1requests库简介requests库是Python中用于发送HTTP请求的第三方库,简单易用且功能强大。使用pipinstallrequests命令完成安装。requests库通过简洁的API设计,使得发送网络请求变得异常简单。发送GET请求只需要一行代码:requests.get('')。发送POST请求并携带数据:requests.post('',data={'key':'value'})。form-data:既有表单又有文件上传

fils传参x-www-form-urlencode:纯表单

data传参raw:某种类型的参数json格式

json传参binary:二进制文件application/octrent-streamdata传参requests库请求参数requests库响应参数response.text

返回字符串形式的结果response.json()返回字典形式的结果response.content返回字节类型的结果response.status_code返回状态码response.reason返回状态信息response.cookie返回cookie信息response.encoding返回编码格式response.headers返回响应头response.request.XXX得到请求数据requests库简介get、post、put、delete四种方法最后都调用request方法requests.request(method,url,**kwargs)变参包括:params,data,headers,cookies,files,auth,timeout,allow_redirects,proxies,hooks,stream接着调用:requests.session().request(method,url,**kwargs)自动关联cookie信息requests库支持会话(Session)的概念,可以复用底层的TCP连接,提高请求效率。例如,创建一个会话对象并使用它发送请求:session=requests.Session()。requests库6.2pytest框架与allure插件概述pytest是一个成熟的全功能的Python测试框架,发现用例、执行用例、判断结果、生成报告。具有零配置的特点,可以快速上手,同时它也提供了丰富的插件系统,可以扩展其功能。pytest支持参数化测试,可以灵活地生成测试用例,提高测试的覆盖率和效率。pytest-hmtl生成HTML报告pytest-xdist多线程运行pytst-ordering控制测试用例的执行顺序pytest-rerunfailure失败用例重跑allure-pytest生成美观的allure报告pytest框架命名规则模块名以test_开头或者_test结尾;类名以Test开头,不能有init方法;测试用例必须以test_开头。例如,一个简单的测试函数可以这样写:deftest_example():

assert1==1。pytest提供了丰富的断言方法,如assertEqual、assertTrue等,可以方便地进行结果验证。pytest框架使用全局配置文件pytest.ini,可以改变默认的规则[pytest]addopts=-vstestpaths=./testcasepython_files=test_*.pypython_classes=Test*python_functions=test_*markers=smoke:冒烟测试pytest框架使用十种setup和teardown方法,级别从高到低:模块级别:setup_module、teardown_module函数级别:setup_function、teardown_function,不在类中的方法类级别:setup_class、teardown_class方法级别:setup_method、teardown_method用例级别:setup、teardownpytest框架高级特性pytest支持fixture(夹具)机制,可以复用测试代码,可以实现注入机制。例如,使用@pytest.fixture装饰器定义一个fixture:@pytest.fixture()

defmyfixture():

return"thisisafixture"。@pytest.fixture(scope="class",autouse=True)defexecte_sql():print("这里执行sql查询") #前置操作yield(“来自fixture的数据”)print("关闭数据库连接") #后置操作pytest框架高级特性pytest支持测试用例的参数化,可以灵活地生成不同的测试用例,如:@pytest.mark.parametrize("test_input,expected",[("3+5",8),("2+4",6)])deftest_eval(test_input,expected):

asserteval(test_input)==expected。执行pytest-mparametrize-vpytesttest_cases/-vpytesttestcase/test_contract_api.py-vpytesttest_cases/-v--html=reports/report.htmlpytest框架

插件简介allure是一个用于生成测试报告的插件,它可以生成美观、易于阅读的测试报告。allure插件支持多种测试框架,如pytest、JUnit等,可以方便地集成到现有的测试流程中。allure插件支持多种报告格式,如HTML、XML等,可以满足不同的报告需求。插件的安装与使用安装allure插件非常简单,使用pipinstallallure-pytest命令即可完成安装。在编写好的测试用例中添加allure装饰器函数

;在运行入口处编写运行allure执行命令

,生成测试报告;alluregeneratejson文件路径-o测试报告路径-c通过浏览器或者脚本启动命令查看生成的测试报告

。allure插件装饰器函数allure插件测试报告allure插件6.3合同管理系统接口自动化测试测试环境搭建在进行合同管理系统接口测试前,需要搭建测试环境,包括安装必要的库、配置测试数据等。通过搭建稳

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论