如何用Jmeter做UI自动化测试

  大家一般所熟知的就是用Python或者Java结合Selenium自动化测试框架做一些UI的自动化测试,今天我们教大家如何用Jmeter来做UI自动化测试

 1.  所需组件

  • 浏览器组件(主要是用于配置浏览器驱动,如谷歌,火狐、IE等)

  • 取样器(主要是用于编写脚本,模拟人工访问浏览器的操作)

 2. 操作步骤(简答的demo演示)

  2.1添加浏览器驱动配置

  • 添加线程组后,选中线程组鼠标右键,依次选择添加->配置元件->浏览器驱动配置(我们这里选择jp@gc - Chrome Driver Config)

  

 

 

  • 添加成功之后,进入到配置页面,点击配置选择按钮【Chrome】,在Path to Chrome Driver编辑框中填入浏览器驱动(chromedriver.exe)位置

  

 

 

  • 其他配置项先保持默认即可

  

2.2 添加取样器

  • 添加线程组后,选中线程组鼠标右键,依次选择添加->取样器->jp@gc - WebDriver Sampler

  

 

 

  • 添加成功之后,进入到取样器编辑页面中,在Script Language中选择您所用的脚本语言(我们这里选择javascript)

  

 

 

  • 接下来莫问在脚本编辑框中,编写我们的代码
WDS.sampleResult.sampleStart() // Start capturing the sampler timing WDS.browser.get('http://www.baidu.com') //Perform the Sampler task访问百度 var pkg = JavaImporter(org.openqa.selenium) //引用selenium需要包 var kw = WDS.browser.findElement(pkg.By.id('kw'))//定位百度输入框 kw.sendKeys('111') //在输入框中输入111 var button = WDS.browser.findElement(pkg.By.id('kw'))//定位百度一下,搜索按钮 button.click() //点击【百度一下】按钮 WDS.sampleResult.sampleEnd()//结束采样器

 

  • 我们总结几个常用的方法:
WDS.name - 是 Name 字段中提供的值(上面)。 WDS.vars - <a href="../api/org/apache/jmeter/threads/JMeterVariables.html">JMeterVariables</a> - 例如 <code> vars.get("VAR1"); vars.put("VAR2",""); vars.remove("VAR3"); vars.putObject("OBJ1",new Object()); </code> WDS.props - JMeterProperties(class <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html"><code>java.util.Properties</code ></a>) - 例如 <code> props.get("START.HMS"); props.put("PROP1","1234"); </code> WDS.ctx - <a href="../api/org/apache/jmeter/threads/JMeterContext.html">JMeterContext</a> WDS.parameters - 是参数字段(上面)中提供的值。 WDS.args - 是参数字段中提供的字符串数组,但由空格 ' ' 字符分隔。这允许脚本编写者提供许多字符串作为输入并按位置访问每个字符串。 WDS.log - 是一个Logger 实例,允许脚本编写者通过将信息写入 jmeter 日志文件来调试他们的脚本(JMeter为其日志条目提供了一个GUI) WDS.browser - 是脚本编写者可以编写脚本和控制的已配置的 Web 驱动程序浏览器。Selenium Javadocs 页面上有关于此对象的详细文档。 WDS.sampleResult - 用于记录计时开始和结束的时间。此外,脚本编写者可以在这个对象上设置成功/失败状态,然后这个 SampleResult 被 JMeter 报告套件使用
  • 最后我们看一下效果,可以先添加一个查看结果树和用表格查看结果

  

 

 

 

 

温馨提示:

  若是需要插件下载地址的,关注公众号后回复2

 


__EOF__

本文作者LH0722
本文链接https://www.cnblogs.com/ludx/p/15772354.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   LH0722  阅读(1130)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示