如何用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

 

posted @ 2022-01-06 18:31  LH0722  阅读(1037)  评论(1编辑  收藏  举报