Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程)

这篇具有很好参考价值的文章主要介绍了Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.简介

  上一篇中已经将其的理论知识介绍了一下,这一篇就带着大家一步一步的把上一篇介绍的理论知识实践一下,然后再说一下如何创建高级web测试计划。

2.网络计划实战

  通过上一篇的学习,将其分类为:

    (1)不需要登录验证身份就可以操作的。

    (2)需要登录验证身份之后才能操作的。

2.1不需要登录

这里就拿博客园来举例子,如博客园,你不需要登录验证身份,就可以执行阅读、查找和浏览博客园内的文章(前提是这些文章没有设置“只允许注册的用户访问”)。

2.1.1抓包

1.阅读博客园文章

1、浏览器上输入博客园地址,点击文章::

如下图所示:Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

2、fiddler抓包工具抓取博客园查找的过程。从下图红色圈住的部分可以看到查找的URL和请求查找发送的参数。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

2.1.2阅读文章

按照抓包抓取到的参数,我们下一步就是用Jmeter模拟阅读博客园文章:

1.建立一个测试计划命名为:Test Blog Read Plan。如图下所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试2.选中测试计划,添加线程组用户,命名为:Blog User。如下图所示:

注意:敲脑壳,敲黑板啦!!!这个就是一个用户阅读一次,如果要压测你可以设置多个用户同时阅读。

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试3.选中线程组,添加一个HTTP Header Manager(HTTP信息头管理器)。这个主要是为了避免Jmeter发送请求后,返回结果可能会出现状态码为403的错误。如下图所示:

注意:敲脑壳,敲黑板啦!!!这里HTTP信息头管理器,主要添加一个参数User-Agent。根据你抓包的header来填写即可。

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

4.选中线程组,设置一个http,发送http默认请求值,放入你需求测试的地址。这样做的好处就是后边的所有的http请求你就不再需要重复的写这个测试地址了。如下图所示:

注意:敲脑壳,敲黑板啦!!!本地搭建的Jenkins应用程序,那么测试地址就很清楚了,这里请求值填写如下:

(1)protocol(协议:http or https):目前博客园是https协议,所以这里填写Protocol:https

(2)测试地址为:博客园的地址,不用啰嗦大家都知道了,Sever Name or IP:www.cnblogs.com

(3)Port:(博客园没有端口)

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试​5.选中线程组,添加一个http请求命名为:Read。如下图所示:

注意:敲脑壳,敲黑板啦!!!本地搭建的Jenkins应用程序,那么Read请求值,我们查看抓到登录请求包(2.2.1)就很清楚了,这里请求值填写如下:

(1)protocol(协议:http or https):目前这个是本地搭建的http协议,所以这里填写Protocol:https

(2)测试地址为:本地搭建,不用啰嗦大家都知道了,Sever Name or IP:www.cnblogs.com

(3)Port:(博客园没有端口)

(4)Method:是那种类型的请求就选择那种,这里选择get

(5)Path:阅读博客园文章的请求路径

(6)Content Encoding:编码这里没有填写,如果出现乱码,你可以填写utf-8和Gb2312试一下,即可。

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试​6.选中线程组,添加一个结果树,命名为:Check Read Results,监听阅读博文是否成功。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

2.2需要登录

同样的这里也拿博客园举例子,你如果要发布随笔、评论、点推荐等等的一系列操作,就需要你登录验证身份以后才能执行这些操作。但是由于博客园的登录机制改变就不拿博客园举例子,拿一个,在本地搭建的Jenkins的web应用程序来实战一下,删除一个job。但是这个job必须在登录以后才能删除,如果没有登录就会删除失败。

2.2.1抓包

1.登录

1、浏览器上登录jenkins,输入账号和密码,点击登录。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

2、fiddler抓包工具抓取jenkins登录的过程。从下图红色圈住的部分可以看到登录的URL和请求登录发送的参数。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

2.删除

1、我们前面讲过登录后新建任务后,那可以继续接着操作:删除刚才新建的任务。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

2、用fiddler抓包,抓到删除新建任务的请求,从抓包结果可以看出,传的data参数是Jenkins-Crumb。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

3.这个Jenkins-Crumb哪里来的呢?可以看上个请求的body。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

2.2.2登录

按照抓包抓取到的参数,我们下一步就是用Jmeter模拟登录到Jenkins。

1.建立一个测试计划命名为:Test Jenkins Plan。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

2.选中测试计划,添加线程组用户,命名为:Jenkins User。如下图所示:

注意:敲脑壳,敲黑板啦!!!这个就是一个用户登录一次,如果要压测你可以设置多个用户同时登录。

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试​3.选中线程组,添加一个HTTP Header Manager(HTTP信息头管理器)。这个主要是为了避免Jmeter发送请求后,返回结果可能会出现状态码为403的错误。如下图所示:

注意:敲脑壳,敲黑板啦!!!这里HTTP信息头管理器,主要添加两个参数User-Agent和Content-Type。根据你抓包的header来填写即可。

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试​4.选中线程组,设置一个http,发送http默认请求值,放入你需求测试的地址。这样做的好处就是后边的所有的http请求你就不再需要重复的写这个测试地址了。如下图所示:

注意:敲脑壳,敲黑板啦!!!本地搭建的Jenkins应用程序,那么测试地址就很清楚了,这里请求值填写如下:

(1)protocol(协议:http or https):目前这个是本地搭建的http协议,所以这里填写Protocol:http

(2)测试地址为:本地搭建,不用啰嗦大家都知道了,Sever Name or IP:localhost

(3)Port:8080(这里搭建的默认端口8080,你也可以在Tomcat的配置文件修改这个端口)

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试​5.选中线程组,添加一个http请求命名为:Login。如下图所示:

注意:敲脑壳,敲黑板啦!!!本地搭建的Jenkins应用程序,那么Login请求值,我们查看抓到登录请求包(2.2.1)就很清楚了,这里请求值填写如下:

(1)protocol(协议:http or https):目前这个是本地搭建的http协议,所以这里填写Protocol:http

(2)测试地址为:本地搭建,不用啰嗦大家都知道了,Sever Name or IP:localhost

(3)Port:8080(这里搭建的默认端口8080,你也可以在Tomcat的配置文件修改这个端口)

(4)Method:是那种类型的请求就选择那种,这里选择post

(5)Path:登录的请求路径

(6)Content Encoding:编码这里没有填写,如果出现乱码,你可以填写utf-8和Gb2312试一下,即可。

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

6.选中线程组,添加一个cookie管理器,用来管理登录后的cookie。如下图所示:

注意:敲脑壳,敲黑板啦!!!cookie的添加一个值,这个也可以在抓包登陆请求中header查看到,这里就不细说了。

(1)Name:JSESSIONID

(2)Value:一串数字和字母

(3)Domain:localhost

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

7.选中线程组,添加一个结果树,命名为:Check Login Results,监听登录是否成功。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

8.选中线程组,添加一个http请求命名为:Delete Item。如下图所示:

注意:敲脑壳,敲黑板啦!!!本地搭建的Jenkins应用程序,那么Delete请求值,我们查看抓到删除请求包(2.2.1)就很清楚了,这里请求值填写如下:

(1)protocol(协议:http or https):目前这个是本地搭建的http协议,所以这里填写Protocol:http

(2)测试地址为:本地搭建,不用啰嗦大家都知道了,Sever Name or IP:localhost

(3)Port:8080(这里搭建的默认端口8080,你也可以在Tomcat的配置文件修改这个端口)

(4)Method:是那种类型的请求就选择那种,这里选择post

(5)Path:删除的请求路径

(6)Content Encoding:编码这里没有填写,如果出现乱码,你可以填写utf-8和Gb2312试一下,即可。

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

9.选中线程组,添加一个结果树,命名为:Check Delete Results,监听删除job是否成功。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

2.3JMeter运行查看运行结果
2.3.1不需要登录

1、点击绿色的按钮,运行Jmeter,如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

2、查看JMeter运行结果,一个请求的监听结果都是绿色的,说明请求成功。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

  (1)查看阅读是否成功,从结果看到博文内容,说明阅读成功。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

2.3.2登录

1、Jenkins的新建任务里有“”,如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

2、点击绿色的按钮,运行Jmeter,如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

 3、查看JMeter运行结果,两个请求的监听结果都是绿色的,说明请求成功。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

(1)查看登录是否成功,从结果看到“admin”和“注销”,说明登录成功。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

(2)可以看到登录成功后的,任务中有“”。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

(3)查看删除是否成功,从结果中没有看到“”,说明删除成功。如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

4、查看Jenkins的新建任务,没有看到“”,说明删除成功了,如下图所示:

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

3.制定高级Web测试计划

在本小节中,红儿将介绍一下如何创建高级 测试计划来测试网站。

有关基本测试计划的示例,请参阅构建Web测试计划。

3.1使用URL重写处理用户会话

如果您的Web应用程序使用URL重写而不是Cookie来保存会话信息,则您需要做一些额外的工作来测试您的站点。

为了正确响应URL重写,JMeter需要解析从服务器接收的HTML并检索唯一的会话ID。使用适当的HTTP URL重写修饰符 可以完成此操作。只需将您的会话ID参数的名称输入到修饰符中,它将找到它并将其添加到每个请求中。如果请求已经有一个值,它将被替换。如果是“缓存会话ID?” 如果选中,则将保存最后找到的会话ID,如果先前的HTTP示例不包含会话ID,则将使用该ID。

URL重写示例

下载此示例。在图1中显示了使用URL重写的测试计划。请注意,URL Re-writing修饰符已添加到SimpleController中,从而确保它只会影响该SimpleController下的请求。

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

图1-测试树

在图2中,我们看到URL重写修饰符GUI,它只有一个字段供用户指定会话ID参数的名称。还有一个复选框,用于指示会话ID应该是路径的一部分(用“;”分隔),而不是请求参数。

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

图2-请求参数

3.2使用标题管理器

该HTTP头管理器可以让你定制什么样的信息JMeter的HTTP请求头发送。此标头包含“用户代理”,“编译指示”,“推荐人”等属性。

该HTTP头管理器,像HTTP Cookie管理器,可能应该在线程组级别添加,除非出于某种原因,您希望为不同的指定不同的页眉HTTP请求在您的测试对象。

4.小结

4.1登录和删除前三个参数空白

1.细心地小伙伴或者童鞋们会从截图中发现宏哥的登录和删除的前三个参数都是空白的,什么也没有填写,那是因为前边的HTTP默认请求,所以这里不用填写,好处就从这里就看出来了,目前只是列举了两个请求,如果成百上千的请求是不是效果就更明显了。

   好了,今天有关创建网络计划实战和创建高级Web测试计划就分享到这里。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:【文末领取】


             【下面是我整理的2023年最全的软件测试工程师学习知识架构体系图】


一、Python编程入门到精通

二、接口自动化项目实战 

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

三、Web自动化项目实战

四、App自动化项目实战 

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

五、一线大厂简历

六、测试开发DevOps体系 

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

七、常用自动化测试工具

八、JMeter性能测试 

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试

九、总结(文末尾部小惊喜)

生命不息,奋斗不止。每一份努力都不会被辜负,只要坚持不懈,终究会有回报。珍惜时间,追求梦想。不忘初心,砥砺前行。你的未来,由你掌握!

生命短暂,时间宝贵,我们无法预知未来会发生什么,但我们可以掌握当下。珍惜每一天,努力奋斗,让自己变得更加强大和优秀。坚定信念,执着追求,成功终将属于你!

只有不断地挑战自己,才能不断地超越自己。坚持追求梦想,勇敢前行,你就会发现奋斗的过程是如此美好而值得。相信自己,你一定可以做到!

Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程),jmeter,网络,前端,软件测试,程序人生,自动化测试,功能测试 文章来源地址https://www.toymoban.com/news/detail-637672.html

到了这里,关于Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Web实战】零基础微信小程序逆向(非常详细)从零基础入门到精通,看完这一篇就够了

    本文以微信小程序为例,从实战入手,讲解有关于小程序这种新型攻击面的渗透,对于了解小程序的安全性和防范措施有一定的帮助。 作为中国特有的一种程序形态,小程序在我们的日常生活中已经无处不在。腾讯、百度、阿里巴巴、字节跳动、京东等各家互联网大厂都有各

    2024年02月04日
    浏览(46)
  • JMeter从入门到精通--开始你的第一个JMeter脚本

    JMeter是一款在国外非常流行和受欢迎的开源性能测试工具,像LoadRunner 一样,它也提供了一个利用本地Proxy Server(代理服务器)来录制生成测试脚本的功能,但是这个功能并不好用。所以在本文中介绍一个更为常用的方法——使用Badboy录制生成 JMeter 脚本。 简单的介绍一下

    2024年02月09日
    浏览(316)
  • 【100天精通python】Day40:GUI界面编程_PyQt 从入门到实战(完)_网络编程与打包发布

    目录  8 网络编程 8.1 使用PyQt 网络模块进行网络通信 服务器端示例 客户端示例

    2024年02月12日
    浏览(47)
  • Jmeter(一) - 从入门到精通 - 环境搭建(详解教程)

         Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能,例如:静态文件,Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等等。JMeter可用于模拟大量负载来测试一台服务器,网络或者对

    2024年02月10日
    浏览(37)
  • ClickHouse从入门到精通(高级)

    第1章 Explain查看执行计划 第2章 建表优化 第3章 ClickHouse语法优化规则 第4章 查询优化 第5章 数据一致性(重点) 第6章 物化视图 第7章 MaterializeMySQL引擎 第8章 常见问题排查

    2024年02月19日
    浏览(28)
  • JMeter 接口自动化测试:从入门到精通的完全指南

    JMeter 是一个开源的负载测试工具,它可以模拟多种协议和应用程序的负载,包括 HTTP 、FTP、SMTP、JMS、 SOAP 和 JDBC 等。在进行接口自动化测试时,使用 JMeter 可以帮助我们快速地构建测试用例,模拟多种场景,发现接口的性能问题。下面是一些 JMeter 接口自动化测试的步骤和技

    2024年02月11日
    浏览(69)
  • C#操作MySQL从入门到精通(8)——对查询数据进行高级过滤

    我们在查询数据库中数据的时候,有时候需要剔除一些我们不想要的数据,这时候就需要对数据进行过滤,比如学生信息中,我只需要年龄等于18的,同时又要家乡地址是安徽的,类似这种操作专栏第7篇的C#操作MySQL从入门到精通(7)——对查询数据进行简单过滤简单过滤方法就

    2024年04月15日
    浏览(38)
  • 翻译: Streamlit从入门到精通 高级用法缓存Cache和Session 五

    Streamlit从入门到精通 系列: 翻译: Streamlit从入门到精通 基础控件 一 翻译: Streamlit从入门到精通 显示图表Graphs 地图Map 主题Themes 二 翻译: Streamlit从入门到精通 构建一个机器学习应用程序 三 翻译: Streamlit从入门到精通 部署一个机器学习应用程序 四 现在您已经了解了 Streamli

    2024年01月18日
    浏览(37)
  • 掌握Go语言:精通Go语言范围(range),高级应用及进销存系统实战(25)

    Go语言的范围(range)除了基本的遍历数组、切片、映射和通道外,还具有一些高级用法,包括: Go语言的范围高级用法 1. 使用下划线忽略索引或值 在Go语言中,使用下划线 _ 可以在范围语句中忽略索引或值,这在我们只关注其中一项时非常有用,可以提高代码的可读性。 示

    2024年04月12日
    浏览(40)
  • XPath从入门到精通:基础和高级用法完整指南,附美团APP匹配示例

    XPath 通常用来进行网站、XML (APP )和数据挖掘,通过元素和属性的方式来获取指定的节点,然后抓取需要的信息。 学习 XPath 语法之前,首先了解一下一些概念。 以上面的 HTML 节点树为例,节点之间包含了下列的关系: 父节点 (Parent): HTML 是 DIV 和 P 节点的父节点; 子节点

    2024年02月19日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包