本项目实现接口自动化的技术选型:Python+Requests+Pytest+YAML+Allure ,主要是针对之前开发的一个接口项目来进行学习,通过 Python+Requests 来发送和处理HTTP协议的请求接口,使用 Pytest 作为测试执行器,使用 YAML 来管理测试数据,使用 Allure 来生成测试报告. 接口项目开发学习: 使用Flask开发简单接口(1)--GET请求接口 使用Flask开发简单接口(2)--POST请求接口 使用Flask开发简单接口(3)--引入MyS…
1.说明 在我前一篇文件(Python+Selenium----使用HTMLTestRunner.py生成自动化测试报告1(使用IDLE ))中简单的写明了,如何生产测试报告,但是使用IDLE很麻烦,而且在实际的项目中也不方便,所以,查了很多资料来研究如何在PyCharm中生成测试报告,故此记录一下(命名什么的不规范就不要纠结了). 2.步骤 第一步:下载HTMLTestRunner.py 参考:Python+Selenium----使用HTMLTestRunner.py生成自动化测试报告1(使…
某互联网后台自动化组合测试框架RF+Sikuli+Python脚本 http://www.jianshu.com/p/b3e204c8651a 字数949 阅读323 评论1 喜欢0 一.**RobotFramework 1.**工具介绍:Robotframework在测试中作为组织测试用例和BDD关键字的平台,主要使用RIDE进行管理,它不是一个工具,而仅仅是一个框架,使用Python进行开发,同时支持WEB测试(Selenium).Java GUI 测试,启动线程.终端.SSH等.支持BDD…
整个流程: 使用HTMLTestRunner的Run方法执行用例,用例调用Excel读取方法,将测试数据导入到unittest用例中执行,测试结果返回给HTMLTestRunner. 因为刚接触接口自动化,写的比较简单.后面也会考虑加一个请求类型的封装,excel测试数据也会增加一些字段(如用例是否运行,是否带Headers.cookie, case依赖,关联数据库,增加日志,定制化HTML,测试结果自动发送邮件等),搞完后再分享出来. 整个目录结构: ---common 存放公共库 ---te…
一.框架结构:  工程目录 二.Case文件设计 三.基础包 base 3.1 封装get/post请求(runmethon.py) import requests import json class RunMethod: def post_main(self,url,data,header=None): res = None if header !=None: res = requests.post(url=url,data=data,headers=header) else: res = r…
一.框架结构:  工程目录 二.Case文件设计 三.基础包 base 3.1 封装get/post请求(runmethon.py) 1 import requests 2 import json 3 class RunMethod: 4 def post_main(self,url,data,header=None): 5 res = None 6 if header !=None: 7 res = requests.post(url=url,data=data,headers=header)…
一.框架结构:工程目录 二.Case文件设计三.基础包 base 3.1 封装get/post请求(runmethon.py) import requests import json class RunMethod: def post_main(self,url,data,header=None): res = None if header !=None: res = requests.post(url=url,data=data,headers=header) else: res = requ…
这两天一直在找直接用python做接口自动化的方法,在网上也搜了一些博客参考,今天自己动手试了一下. 一.整体结构 上图是项目的目录结构,下面主要介绍下每个目录的作用. Common:公共方法:主要放置公共的操作的类,比如数据库sqlhelper.文件操作类等 Config:公共变量:主要放置公共变量,比如ST.UAT.生产环境的url地址.用户名密码.数据库连接 Data:数据层,有点类似三层架构中的DAL,它是数据的来源,根据数据存放的格式再细分json.xml.表单和数据库 Log:日志层…
1.安装requests.xlrd.json.unittest库 <1>pip 命令安装: pip install requestspip install xlrdpip install jsonpip install unittest <2> pycharm里安装 2.利用Page Object Model 设计理念创建六类Python Package(也可根据项目要求具体实施) 3.先在base包里创建一个Base_Page.py <1>导入模块,并创建Base类,…
以数据驱动的形式,将用例维护在py文件中 源码分析: 变量定义 publicParameters.py """ 公共参数 , 按照各公司实情,自行编写 """ url = "https://XXXX.com" username = "XXXXXXX" password = XXXX tenantId = XXXX passport_id = XXXX encryptionKey = XXXX # 请求参数类…