学完了Python脚本接口自动化之后,一直没有对该框架做总结,今天终于试着来做一份总结了. 框架结构如下图: 来说一下每个目录的作用: Configs:该目录下存放的是.conf,.ini文件格式的配置文件;文件里面的内容可以通过封装好的读写配置文件的类去获取. datas:该目录下存放一些测试用例数据,如:Excel libs:存放修改源码后的ddt.py和HTMLTestRunner文档,这个两个文档主要是为了让测试报告看起来更明了 logs: 存放脚本运行的日志文件 reports: 执行…
API 自动化框架 个人认为接口自动化测试使用python语言编写更加简单,但所有接口自动化项目代码的思维都是一样的 1.项目包结构 1.case:存放用例数据的包,将所有用例数据以配置文件形式传入 2.core:核心包 1)config.py:封装ConfigParser解析获取配置文件数据的方法 python的内置模块ConfigParser:不太了解的可以百度 2)log.py:封装log的模块 3)request.py:封装接口测试的方法 4)mysql.py:封装连接数据库的方法 3.…
接口自动化目前是测试圈主流的一个话题,我也在网上搜索了很多关于自动化的关键词,大多数博主分享的python做接口自动化都是以开源的框架,比如:pytest.unittest+ddt(数据驱动) 最常见的. 这些框架的缺陷太多,如下列举几个: 1.无法实现参数关联:上个请求的结果是下个请求的参数,如token 2.接口请求参数名有重复的,目前未处理,如key1=value1&key1=value2,两个key都一样,这种需要用元组存储,无法判断 3.接口数据更新无法直接更新excel,仍需修改代码…
框架产生目的:公司走的是敏捷开发模式,编写这种框架是为了能够满足当前这种发展模式,用于前后端联调之前(后端开发完接口,前端还没有将业务处理完毕的时候)以及日后回归阶段,方便为自己腾出学(mo)习(yu)时间. 鄙人一介小测试,一手承接产品,一手面对开发(4个后端,3个web前端,外加不知道几个的乙方),项目经手了5批人,鄙人是第5批的测试,规范没有,前人积累没有,天崩开局/(ㄒoㄒ)/~~. 老规矩,上图: getparhInfo.py:获取autoapi文件夹所在的目录,便于项目换家,有没有其…
一)框架目录的结构 二)config包当中的config.ini文件主要是用来存项目的绝对路径,是为了后续跑用例和生成测试报告做准备然后目前的配置文件大都会用yaml,ini,excel,还有.py也就是python文件来进行管理这里用的是ini文件. 三)config包当中的globalconfig文件主要是用来生成项目的路径,测试用例,测试报告的路径其中调用了ReadConfigIni这个类来读取ini格式的文件. 四)Data.xlsx主要是用来存放项目的url,账号和密码的通过excel…
1.环境及其工具: ubuntu 16.04 python2.7(自带) pip2.7(安装) virtualenv(安装) crontab (自带) 2.pip2.7安装 (1)尝试使用 sudo apt install python-pip 失败 (2)尝试使用下载到本地安装 参考:https://blog.csdn.net/arvin_zx/article/details/78893079 wget https://bootstrap.pypa.io/get-pip.py --no-che…
seleinum框架 框架的思想:  解决我们测试过程中的问题:大量的重复步骤,用自动化来实现    1)配置和程序的分离    2)测试数据和程序的分离    3)不懂编程的人员可以方便使用:使用的时候不需要写程序    4)有日志功能,实现无人值守    5)自动发报告    6)框架中不要有重复的代码,实现高度的封装和复用 推荐使用关键字驱动.混合驱动 为什么要编写程序呢? 通用性的东西满足不了个性化的需求 测试的工具:python+selenium 接口测试用例:excel 一.搭建自动…
################################################################# #author: 陈月白 #_blogs: http://www.cnblogs.com/chenyuebai/ ################################################################# 一.环境搭建概览:win 7+ python 3.6  + pycharm + robotframework + Inte…
一.项目框架如图: 1.common :这个包都是一些公共的方法,如:手机号加解密,get/post接口请求的方法封装,接口鉴权,发邮件,读写excel文件方法等等 2.result:存放每次运行的log和测试报告 3.testcase:这个包放test开头的测试用例 4.testFile:这个包放接口上传的图片(如注册需要上传头像),excel管理的接口参数 5.caselist.txt:需要运行的用例 6.config.ini :放一些配置信息,如发邮件的房间账户,接口需要使用的固定参数和版…
查看完整文章点击原文链接:纯python自研接口自动化脚本更新版本,让小白也能实现0到1万+的接口自动化用例 你是否还在用postman\jmeter做接口自动化吗?用python的开源框架[unittest\pytest]一个一个接口码代码搬运吗?网上调查无论是刚入门的还是进阶阶段的测试者,大部分人以及培训机构的课程还是这样做的接口自动化! 本号推出以一顶三的python自研接口自动化框架,当然也是利用从Excel读取做为驱动和存储测试数据完成接口自动化,请仔细看完这篇文章你就知道脚本的魅力所…
转自https://my.oschina.net/u/3041656/blog/820023 摘要: python + requests实现的接口自动化框架详细教程 前段时间由于公司测试方向的转型,由原来的web页面功能测试转变成接口测试,之前大多都是手工进行,利用postman和jmeter进行的接口测试,后来,组内有人讲原先web自动化的测试框架移驾成接口的自动化框架,使用的是java语言,但对于一个学java,却在学python的我来说,觉得python比起java更简单些,所以,我决定自…
前段时间由于公司测试方向的转型,由原来的web页面功能测试转变成接口测试,之前大多都是手工进行,利用postman和jmeter进行的接口测试,后来,组内有人讲原先web自动化的测试框架移驾成接口的自动化框架,使用的是java语言,但对于一个学java,却在学python的我来说,觉得python比起java更简单些,所以,我决定自己写python的接口自动化测试框架,由于本人也是刚学习python,这套自动化框架目前已经基本完成了,于是进行一些总结,便于以后回顾温习,有许多不完善的地方,也遇到…
API自动化框架API自动化框架分为conf.data.utils.api.testcase.runner.report.log8个模块.conf是用来储存系统环境.数据库.邮件等的配置参数.项目的绝对路径.各个模块的绝对路径.各个接口的参数url.data.headers.json.verify(关掉https),其中有ini.yaml.xlsx文件等,通过响应的方法来处理相应的文件.ini文件是section.option.value的形式,一般通过继承configparse模块进行处理,y…
某互联网后台自动化组合测试框架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…
python+request接口自动化框架搭建 1.数据准备2.用python获取Excel文件中测试用例数据3.通过requests测试接口4.根据接口返回的code值和Excel对比 但本章只讲整个思路和代码框架 代码封装后当成模块引用!!! 步骤一:引用Requests模块开展接口测试 Python Requests快速入门 :http://cn.python-requests.org/zh_CN/latest/ 如何利用requests进行接口测试,可以根据以下demo进行相应改造 #c…
1 什么是selenium Selenium 是一个基于浏览器的自动化工具,它提供了一种跨平台.跨浏览器的端到端的web自动化解决方案.Selenium主要包括三部分:Selenium IDE.Selenium WebDriver 和Selenium Grid: Selenium IDE:Firefox的一个扩展,它可以进行录制回放,并可以把录制的操作以多种语言(例如java,python等)的形式导出成测试用例. Selenium WebDriver:提供Web自动化所需的API,主要用作浏览…
Python+Pytest+Allure+Git+Jenkins接口自动化框架 一.接口基础 接口测试是对系统和组件之间的接口进行测试,主要是效验数据的交换,传递和控制管理过程,以及相互逻辑依赖关系.其中接口协议分为HTTP,RPC,Webservice,Dubbo,RESTful等类型. 接口测试流程 1.需求评审,熟悉业务和需求 2.开发提供接口文档 3.编写接口测试用例 4.用例评审 5.提测后开始测试 6.提交测试报告 两种常见的 HTTP 请求方法:GET 和 POST 二.项目说明…
python自动化测试(3) 自动化框架及工具 1   概述 手续的关于测试的方法论,都是建立在之前的文章里面提到的观点: 功能测试不建议做自动化 接口测试性价比最高 接口测试可以做自动化 后面所谈到的 测试自动化 也将围绕着 接口自动化 来介绍. 本系列选择的测试语言是 python 脚本语言.由于其官方文档已经对原理有了比较清楚的解释,本文就不做一些多余的翻译工作了.偏向于实战部分,而且为了偏向实战,也会结合 IDE 工具和项目组织来进行讲解. 理由如下: 脚本语言,开发和迭代的效率极高 第…
在做Web自动化过程中,汇总了Python+selenium的API相关方法,给公司里的同事做了第二次培训,分享给大家                                                                                                                     WEB自动化测试培训2 课程目的 一.Webdriver API 的使用 课程内容 1    控制浏览器 Selenium 主要提供的是操作页面上各…
ShutIt是一个易于使用的基于shell的自动化框架.它对基于python的expect库(pexpect)进行了包装.你可以把它看作是“没有痛点的expect”.它可以通过pip进行安装. Hello World 让我们从最简单的例子开始吧.创建一个名为example.py的文件: import shutit session = shutit.create_session('bash') session.send('echo Hello World', echo=True) 运行这个文件:…
为什么要做接口自动化框架 1.业务与配置的分离 2.数据与程序的分离:数据的变更不影响程序 3.有日志功能,实现无人值守 4.自动发送测试报告 5.不懂编程的测试人员也可以进行测试 正常接口测试的流程是什么? 确定接口测试使用的工具----->配置需要的接口参数----->进行测试----->检查测试结果----->生成测试报告 测试的工具:python+requests 接口测试用例:excel 一.接口框架如下: 1.action包:用来存放关键字函数 2.config包:用来…
1.概述 selenium: 基于JavaScript代码库的自动化测试框架,通过脚本语言,模拟用户行为操作,最接近用户真实场景,实现对web自动测试. Selenium,是目前的最火爆企业最主流的webUI自动化框架 pytest: pytest是一个非常成熟的全功能的Python测试框架,是unittest框架的扩展,主要特点有以下几点: 1.简单灵活,非常方便的组织自动化测试用例: 2.支持参数化,可以细粒度地控制要测试的测试用例: 3.能够支持简单的单元测试和复杂的功能测试,比如web端…
利用Dnspod api批量更新添加DNS解析[python脚本] - 推酷 undefined…
Jenkins执行python写的selenium自动化脚本,通常会遇到,执行打不开浏览器,查看jenkins构建Console Output控制台输出信息,发现脚本是执行了的,但是出错了,打开浏览器出现问题,原因呢,是因为我们window安装的jenkins默认会产生一个window服务:那怎么解决这个问题呢. 1.先在控制面板-->管理工具-->服务:中找到Jenkins服务,-->属性,停止和禁用该服务. 有人会说了,你把服务停止了jenkins怎么用啊,别急,听笔者一一道来. 2…
一.数据库连接配置 如果连接的是pycharm默认的Sqlite,不用改动,使用默认配置即可 如果连接mysql,需要在配置文件中的setting中进行配置: 将DATABASES={} 更新为 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'HOST': '127.0.0.1', 'PORT': 3306, 'USER': 'root', 'PASSWORD': 'pie123', 'NAME': 'test_…
一.celery简介: Celery 是一个强大的 分布式任务队列 的 异步处理框架,它可以让任务的执行完全脱离主程序,甚至可以被分配到其他主机上运行.我们通常使用它来实现异步任务(async task)和定时任务(crontab). Celery的架构由三部分组成,消息中间件(message broker),任务执行单元(worker)和任务执行结果存储(task result store)组成. 可以看到,Celery 主要包含以下几个模块: 任务模块 Task 包含异步任务和定时任务.其中…
刷新cdn的流程:jenkins获取git中的代码,触发脚本推送到生产环境中(即cdn的源站) --> 触发脚本获取git工作目录的更新列表,将更新列表拼凑成带域名信息的url,写入到目录中 --> 触发python脚本读取目录中的url发送给akamai的api进行cdn的刷新 参考文档创建client api,此次我们的账号没有创建client api的权限,需要管理员处理文档地址:https://developer.akamai.com/api/getting-started#befor…
齿轮发出咔嚓一声,向前进了一格.而一旦向前迈进,齿轮就不能倒退了.这就是世界的规则. 0x01背景 造了个轮子:御剑师傅的ipintervalmerge的Python版本.觉得打印的提示信息如果是普通格式显示的话,有些LOW,就想要打印颜色字符,于是有了这篇学习笔记. 0x02 原理及格式 原理: Shell的字符颜色是由转义字符控制的,是系统的输出格式,与具体的编程语言无关.也就是说无论使用何种编程语言,只要按照Shell的输出格式打印输出,就会得到想要的效果. 格式: \033[n1;n2;…
1.OpenAPI Explorer 记录一下使用阿里云 Open API 自动化/脚本化 “ECS 公网 IP 转化弹性公网 IP”的实现 全过程.原博客地址:https://www.markeditor.com/file/get/e156893757a36a62d761e2d79950d0da?t=1564731800  开始编码之前,我们要有一个良好的调试环境,来验证程序是否运行良好.阿里云提供了 OpenAPI Explorer,提供了运行 demo,UI 运行器,Cloud Shell…
目录 单表增删改查,在Python脚本中调用Django环境 一.数据库连接配置 二.orm创建表和字段 三.单表增删改查 1.增加数据 2.删除数据 3.修改数据 4.查询数据 四.在Python脚本中调用Django环境 单表增删改查,在Python脚本中调用Django环境 一.数据库连接配置 如果连接的是pycharm默认的Sqlite,不用改动,使用默认配置即可 如果连接mysql,需要在配置文件中的setting中进行配置: 将DATABASES={} 更新为 DATABASES =…