1.简介

  在使用jmeter自动录制脚本时会产生很多无用的请求,所以推荐使用badboy录制脚本之后保存为jmx文件,在jmeter中打开使用。因此宏哥在这里介绍一下Badboy这款工具,本来打算不做介绍了,原因是因为这款工具已经不在维护和更新了,但是考虑到有些童鞋们不能手撸测试脚本,所以宏哥还是抽点时间来介绍这一款风靡一时的录制工具。

2.badboy简介

Badboy监控internet explorer的活动,提供录制/回放功能. 录制功能:badboy窗口的顶部显示当前是否处于录制状态,如果点击play按钮,badboy自动关闭录制功能,等到play结束后,可以点击recording按钮,继续录制脚本. 

注意:必须等到上一步的request处理完毕后,才能点击发送下一个request,否则下一个request会作为第一个request的子frame.

1.轻量级的免费测试工具;

2.可以功能测试,主要还是性能测试;

3.可以单独进行简单任务的压力测试,也可以作为Jmeter脚本开发工具。 主要是测试人员使用。也有少量功能支持开发人员调试、自测使用。

3.下载

1. 官网地址http://www.badboy.com.au/   以前是可以访问的,宏哥最近试了一下,不能访问了,可能是因为不更新维护的原因吧,因此宏哥提供了一个安装包,你可以自己下载安装一下,如下:

badboy安装包:链接: https://pan.baidu.com/s/1Ae3tLuP3q7301SzyXDGw2A提取码: jcg5

2. 下载后安装(傻瓜式安装,宏哥在这里就不赘述了)

3. 点击安装好的badboy的图标,你将看到Badboy的IDE界面,下图是宏哥对界面进行的简单注解,其中包括Badboy官网的一个介绍截图

4.这个是宏哥对其进行的一个详细的介绍,如下图所示:

4.界面及功能总述

4.1菜单栏

1.File: 包括常用的打开脚本,新建脚本,导出脚本,保存脚本等功能

2.Edit: 点击Edit menu下的Search/Replace将在面板中弹出如下界面,帮助我们在脚本中选择和替换功能。点击X 关闭窗口。当然我们也可以使用F3快捷键弹出此界面

3.View: 点击和再次点击,改变展示和隐藏视图区域,其中Report 功能还有3种定制供用户选择,这部分将来的课程会讲解

4.Tools: 中的功能较多,比如我们可以配置数据源自动化的填充数据到测试的系统上,特别是某些测试点值不能唯一时,从数据源读取是很普遍的方法,QTP就能便捷读取Excel的数据

5.Preferences: 我们可以在General Tab下改变系统设置 。比如:默认配置下,点击右侧箭头请求时自动触发录制,如果想取消此配置,可以去掉勾选,如下。

6. Help:

其中点击Content可以帮忙文档,我的系列文章也是基于Badboy的帮助文档进行整理和依据

4.2Tools bar:部分工具介绍

1.创建测试组,测试单元,步骤

2.录制模式: Request 和 Navigation 两种

3.运行脚本:我们也习惯称跑脚本

4.其他:打开,保持,捕捉截图,创建变量,定时等

4.3 浏览器地址栏

由于Badboy录制区域是右半部分的内容区,因此网站的起点应该在地址栏启动

4.4 脚本树

  宏哥在使用早期的Badboy低版本中,只有Step的级别,在后来的不断更新和迭代中,Badboy在后来的几个版本中开始引入Suite和test的概念,这样做的好处是更明显的体现脚本的层级,测试人员一目了然,后边维护人也好接手。这里将以测试博客园的的发表随笔功能为例进行后续的所有课程的情景学习。接触过测试的童鞋们或者小伙伴们都应该理解,如果我们测试博客园,发表随笔功能只是其中一个模块的一个功能,博客园还有很多其他的功能,如下我列举了的简单功能列表和测试思路:

层级说明:如果我们都以Step为汇总所有的测试步骤,只是使用Step name或ID区分还是不容易理解和寻找,现在,我们可以将一级功能定位为Suite级别,将Test定位为测试点,Step层是测试的不同场景。当然,Badboy也没有明确规定必须使用多个Suites或Tests,只是默认增加一个Test时会自动增加下级Step,并且Test在一个树状层级上,如下图所示:

宏哥按照上班的介绍做一个发布随笔的层级,如下图所示:

增加:除了点击上边的图标,还可以这样:右击选择Add

重命名:双击名称后,将弹出对话框,可以输入新名称及描述,点击Ok,保存操作

删除:右击选择Delete

Template模板:右击选择Save as Template,使用模板可以有效的体现脚本重用的理念,例如,我们可以将有2个输入项无验证码的登录脚本保持为模板,当有其他网站也是这样的登录方式时,可以直接引入,无需再次录制。

5.小结

  好了,今天就是对这款工具有一个大致的了解会用就可以了,如果想深入学习,可以查看一下英文版的使用手册,介绍的很详细。

Jmeter(二十八) - 从入门到精通 - Jmeter Http协议录制脚本工具-Badboy1(详解教程)的更多相关文章

  1. Jmeter(二十九) - 从入门到精通 - Jmeter Http协议录制脚本工具-Badboy2(详解教程)

    1.简介 上一篇文中已经对Badboy做了一个基本上详细完整的介绍,这一篇宏哥带你们实战一下,这一篇主要讲解和分享:录制和运行脚本.参数化 首先让我们使用N模式录制一个脚本,测试用例编号为:1.1.1 ...

  2. Jmeter(二十四) - 从入门到精通 - JMeter函数 - 中篇(详解教程)

    1.简介 在性能测试中为了真实模拟用户请求,往往我们需要让提交的表单内容每次都发生变化,这个过程叫做参数化.JMeter配置元件与前置处理器都能帮助我们进行参数化,但是都有局限性,为了帮助我们能够更好 ...

  3. Jmeter(十八) - 从入门到精通 - JMeter后置处理器 -下篇(详解教程)

    1.简介 后置处理器是在发出“取样器请求”之后执行一些操作.取样器用来模拟用户请求,有时候服务器的响应数据在后续请求中需要用到,我们的势必要对这些响应数据进行处理,后置处理器就是来完成这项工作的.例如 ...

  4. Jmeter(三十八) - 从入门到精通进阶篇 - 命令行运行JMeter详解(详解教程)

    1.简介 前边一篇文章介绍了如何生成测试报告,细心地小伙伴或者同学们可以看到宏哥启动Jmeter生成测试报告不是在gui页面操作的,而是在gui页面设置好保存以后,用命令行来生成测试报告的.这一篇宏哥 ...

  5. Jmeter(四十八) - 从入门到精通高级篇 - Jmeter监控服务器性能(详解教程)

    1.简介 JMeter是一款压力.接口等等的测试工具,Jmeter也可以像loadrunner一样监控服务器CPU.内存等性能参数,用来监控服务器资源使用情况,不过需要安装一些插件.JMeter正常自 ...

  6. Jmeter(二十六) - 从入门到精通 - 搭建开源论坛JForum(详解教程)

    1.简介 今天这篇文章主要是给大家讲解一下,如何部署测试环境,这里宏哥部署一个开源测论坛,后边的文章中会用到这个论坛,并且也看到童鞋们在群里讨论如何在开发将测试包发给你以后,你如何快速地部署测试环境. ...

  7. Jmeter(二) - 从入门到精通 - 创建测试计划(Test Plan)(详解教程)

    1.简介 上一篇中宏哥已经教你把JMeter的测试环境搭建起来了,那么这一篇我们就将JMeter启动起来,一睹其芳容,首先宏哥给大家介绍一下如何来创建一个测试计划(Test Plan). 2.创建一个 ...

  8. Jmeter(七) - 从入门到精通 - 建立数据库测试计划实战<MySQL数据库>(详解教程)

    1.简介 在实际工作中,我们经常会听到数据库的性能和稳定性等等,这些有时候也需要测试工程师去评估和测试,上一篇文章宏哥主要介绍了jmeter连接和创建数据库测试计划的过程,宏哥在文中通过示例和代码非常 ...

  9. 《手把手教你》系列基础篇(七十八)-java+ selenium自动化测试-框架设计基础-TestNG依赖测试- 中篇(详解教程)

    1.简介 上一篇讲解了依赖测试的各种方法,今天继续讲解依赖测试的方法,这一篇主要是讲解和分享通过xml文件配置组名依赖方法( 主要是测试组的用法).废话不说,直接上干货. 2.实例 测试组:一个组可包 ...

随机推荐

  1. OLTP与OLAP的介绍(理论知识)

    OLTP与OLAP的介绍 数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing).联机分析处理OLAP(On-Line Analytical ...

  2. JavaWeb项目问题记录

    模板 [遇到的问题] [时间] [原因] [解决方案] [排查思路及方式] 思路: 1) 2) [遇到的问题] 品优购项目中运营商页面查询广告信息是,无法正常查询,错误如下: Failed to lo ...

  3. .NetCore中简单使用EasyNetQ

    前言 我们在.Net中使用RabbitMQ,最原始的就是基于RabbitMQ.Client进行编码,在这个过程中我们需要通过代码约定和维护队列,Exchange等.如果是自行编码封装通用型的Rabbi ...

  4. python开发基础(二)运算符以及数据类型之dict(字典)

    # encoding: utf-8 # module builtins # from (built-in) # by generator 1.147 """ Built- ...

  5. Java入门(3)

    阅读书目:Java入门经典(第7版) 作者:罗格斯·卡登海德 在程序中使用字符值时,必须用单引号将赋给变量的字符值括起来,对于字符串必须用双引号括起来. int整型-2.14*10^9~2.14*10 ...

  6. vscode实现远程linux服务器上Python开发

      最近需要训练一个生成对抗网络模型,然后开发接口,不得不在一台有显卡的远程linux服务器上进行,所以,趁着这个机会研究了下怎么使用vscode来进行远程开发.   1 配置免密登录¶   (1)在 ...

  7. springboot整合rabbitMq实现消息延时发送

    实现思路:利用mq的ttl设置消息失效时间 当达到设置时间后通过交换机到达死信队列中,消费者端绑定读取死信队列中信息来达到延时发送消息的功能. demo 如下: (1)在pom.xml 中引入rabb ...

  8. 使用Selenium爬取京东电商数据(以手机商品为例)

    进入京东(https://www.jd.com)后,我如果搜索特定的手机产品,如oppo find x2,会先出现如下的商品列表页: 如果点击进入其中一个商品会进入到如下图所示的商品详情页,可以看到用 ...

  9. ssh连接客户端一段时间没响应就断掉的解决办法-保持长连接

    修改(添加)server端的 /etc/ssh/sshd_config #server每隔60秒发送一次请求给client,然后client响应,从而保持连接 ClientAliveInterval ...

  10. 没有真实串口设备时使用"虚拟串口驱动"调试你的串口代码

    目录 前言 示例代码 总结 前言 很多时候需要编写串口代码,但是又没有真实串口设备来调试代码.以及本身就是要操作2个串口的情况,可以使用"虚拟串口驱动"工具方便的调试代码. 使用方 ...