接口自动化实战

废话少说,直接上接口自动化的实战。

需要的材料:

1、开发提供接口文档,如果没有接口文档,只要有URL也行,给大家普及下URL基础知识,这对做接口测试很重要。

例如:URL:https://i.cnblogs.com/EditPosts.aspx?opt=1,这个路径中要访问的网页是/EditPosts.aspx,i.cnblogs.com则是它的域名,?号后面指要提交的参数,具体是get还是post提交请大家用firebug抓取看就知道了,?号后如果有多个参数,参数与参数之间用“&”符号连接。2、数据库:我用的是MYSQL,需要自己实践的童鞋请自己在电脑上先安装好数据库。

3、接口自动化工具:Jemeter。工具安装请大家自己百度哈,(百度上一大堆)

4、工具准备好后,开始实战了:

先将安装好的数据库添加进jemeter,步骤如下:

1、先下载mysql的jdbc驱动,然后将jar包放置在/lib路径下。

《此步骤可以用另一种方式操作:由jemeter的测试计划去添加jdbc驱动的jar包》

2、新建一个线程组:定义好虚拟用户、延迟时间、循环次数。
3、新建JDBC Connection Configuration:定义好名称、Variable Name(绑定到数据库池的变量名)、数据库连接配置里的参数(Database URL、JDBC Driver class、Username、Password)。

注意:不同的数据库和JDBC驱动程序需要不同的JDBC配置,详细参考JDBC驱动程序文档。

4、新建JDBC Request:定义好名称、Variable Name(此变量名要和步骤3里的变量名一致)、输入SQL Query语句,其他保持默认即可。

如果SQL语句是插入语句,详见下图:

5、添加断言:右键点击线程组---->添加--->断言---->响应断言。

6、新建一些监听器:

添加一个查看结果树:右键点击线程组---->添加--->监听器---->察看结果树。

下面是添加所有东东的列表:

数据库我们已经加入jemeter了,为什么要添加数据库呢?是因为我们在测试接口时会遇到删除接口类时,我们不能每次都手动往数据库里添加数据,再来测试,这就失去自动化的意义了,所有咱们先把数据库放在测试计划的最前面,因为Jemeter批量运行时是根据测试计划的先后顺序来执行的。

接下来,添加我们要测试的接口,先上一幅我已写好的接口:

接下来添加HTTP请求,添加请求要根据具体项目协议而定,思想是不变的。具体步骤如下:

1、添加线程组:

线程数:指设置虚拟用户数。

Ramp-Up Period(in second):指用户延迟几秒启动,如果设置为5,代表5秒后启动全部虚拟用户,计算下来:5个用户/5秒=1个用户/秒。

循环次数:指要循环几次这个线程组。

2、添加HTTP请求默认值:(这一步其实可以省略)

操作步骤:选择线程组,右键点击并在弹出的菜单中选择添加——>配置元件——>HTTP请求默认值。

在此界面唯一需要修改的地方是“服务器名称或IP”,输入IP,其他文本域保留默认值即可。

HTTP请求默认值元件并不是告诉Jmeter来发送HTTP请求,它仅仅定义这个HTTP请求所用的默认值。

3、添加HTTP请求:

操作步骤:选择线程组,右键点击并在弹出的菜单中选择添加——>Sampler——>HTTP请求。

不必要再重写“服务器名称或IP”,因为已经在HTTP请求默认值里设置了。

更改名称,写好路径。

4、添加监听器:

监听器的用途是:将所有的HTTP请求结果存储在一个文件中并显现出数据的可视模型。

操作步骤:选择线程组,右键点击并在弹出的菜单中选择添加——>监听器——>图形结果。

需要指定文件路径和输出文件名。

如果有多个接口,可以重复HTTP请求的操作步骤添加接口。

接口添加好后,接下来就是批量运行,点击测试计划,如下图,记住一定要勾选红圈的地方,右键点击运行,即可批量运行,点击察看结果树里面,就可以看到所有运行的接口测试结果了:

时间: 2024-08-24 12:58:57

接口自动化实战的相关文章

【三】Jmeter接口自动化测试系列之Http接口自动化实战

作者:大虫 本文介绍 Jmeter 工具的 http 接口 自动化测试 实战! 为了通用性,就拿知乎 网站作为实战例子吧! 必备技能:http接口基础知识.抓包,本文不做详细介绍,不会的可以先百度恶补! 首先,我们把 知乎登录的包抓下来: 我们抓一下 获取 Jmeter 对应脚本如下: 获取发现栏目脚本: 使用正则表达提取器,提取栏目内容(what?不会正则表达式?找百度) 使用 foreach 控制器将提取结果合并到一个字符串 打印结果: 运行结果: 在进行http 接口测试的时候,通常需要注

基于python的接口自动化实战(一)

最近接触了接口自动化,经过大约一个月的时间,利用工作之余,借助公司的项目,搭建了接口自动化框架(此框架是要实现脚本与数据的完全分离).整个过程中,最重要的就是实现思路,思路有了,实现起来还是不困难的. 第一篇就先记录一下搭建框架的大致思路. 1.首先,整个框架应该包含的内容 简单概括:执行测试用例,生成测试报告 2.怎么实现测试用例的执行 本框架中,使用Excel管理测试用例,所以整个框架的核心就是获取Excel表格中需要的数据(或者说获取执行每一个接口测试需要的数据) 整个的框架如下图所示:

接口自动化学习--mock

好久没有写学习的总结,都正月十二了,但还是要来个新年快乐鸭. 一直都在看imooc的一套java接口自动化实战课程,现在看到了尾部了,然后想到之前那些testng,mock,httpclient等都没有做小结,所以就还是怕会学了看过了,没有实战就忘记了... 简介  mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法,这个虚拟的对象就是mock对象.mock对象就是真实对象在调试期间的代替品.mock用来模拟接口的,课程中学习mock用

《jmeter接口自动化与性能实战-飞天小子.pdf》

Jmeter作为开源测试工具,以其轻便,功能齐全的优点,正越来越受到企业的重视.作为纯java的工具,它的扩展性无比强大,既可以做功能测试,也可以做性能测试:既支持接口层面的测试,也支持webdriver驱动浏览器做ui测试.它支持各种协议,各种数据库,甚至于大数据,MQ这些前沿技术也被加入了进来.正因为版本迭代越来越快,功能越来越复杂,所以在实际操作过程中我们会遇到很多困难.而网上的一些教程由于版本过于陈旧,已经不能满足于我们的需求.我在工作之余,耗费了大量个人的时间潜心编写和整理了这套jme

2020年第二期《python接口自动化+测试开发》课程,预售!

2020年第二期<python接口自动化+python测试开发>课程,12月15号开学! 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学,方便交流 本期上课时间:12月15号-3月29号,每周六.周日晚上20:30-22:30 报名费:报名费3000一人(周期3个月) 联系QQ:283340479 课表如下 课程主要涉及的内容: 1.fiddler抓包与接口测试(测试基础必备) 2.python+pytest框架实现接口自动化测试(pytest框架甩unittest几条街) 3.httpr

2020年第三期《python接口自动化+测试开发》课程,4月5号开学(火热报名中!)

2020年第三期<python接口自动化+python测试开发>课程,4月5号开学(火热报名中!) 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学,方便交流 本期上课时间:4月5号-6月27号,每周六.周日晚上20:30-22:30 报名费:报名费3000一人(周期3个月) 联系QQ:283340479 课表如下 课程主要涉及的内容: 1.fiddler抓包与接口测试(测试基础必备) 2.python+pytest+allure框架实现接口自动化测试(pytest框架甩unittest几条

python接口自动化9-https请求(SSL)

前言 本来最新的requests库V2.13.0是支持https请求的,但是一般写脚本时候,我们会用抓包工具fiddler,这时候会报:requests.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) 小编环境: python:2.7.12 requests:2.13.0 fiddler:v4.6.2.0 一.SSL问题 1.不启用fiddler,直接发htt

python接口自动化2-发送post请求

前言 发送post的请求参考例子很简单,实际遇到的情况却是很复杂的,首先第一个post请求肯定是登录了,但登录是最难处理的.登录问题解决了,后面都简单了. 一.查看官方文档 1.学习一个新的模块,其实不用去百度什么的,直接用help函数就能查看相关注释和案例内容. >>import requests >>help(requests) 2.查看python发送get和post请求的案例 >>> import requests       >>> r

Selenium2学习-007-WebUI自动化实战实例-005-解决 Firefox 版本不兼容:org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary

此文主要讲述 Java 运行 Selenium 脚本时,因 Friefox 浏览器版本与 selenium-server-standalone-x.xx.x.jar 不兼容引起的 org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary 报错解决方法. 希望能对初学 Selenium2 WebUI 自动化测试编程的亲们有所帮助.若有不足之处,敬请大神指正,不胜感激! 之前给朋友初步介绍了 S