你好社区#1, 我是新来的JMeter和相关的东西。 只是登录请求,并通过硒的webdriver取样响应(使用Java脚本)完成。 屏幕截图也连接到这条信息。所有的好工作。 现在,我经历了一些文章,他们强调使用Groovy脚本(JSR223下采样),但我无法弄清楚如何将这个相同的JavaScript(WDS采样)在Groovy(JSR223采样)转换可运行Script.I会很感激在这个方向上的帮助任何一种。谢谢
常规(Groovy的2.4.15 / Groovy的脚本引擎2.0)已经显示在我的JSR223采样[即时通讯使用Apache的JMeter的-5.0]我运行Hello World程序的fine..further工作我不知道ABT如何使用Groovy脚本玩。 下面是我的代码在javascipt的(硒WDS)
WDS.sampleResult.sampleStart();
WDS.log.info("Maximo Application ---- Sample started");
var pkg = JavaImporter(org.openqa.selenium); //WebDriver classes
var support_ui = JavaImporter(org.openqa.selenium.support.ui.WebDriverWait);
var wait = new support_ui.WebDriverWait(WDS.browser, 5000);
var conditions=org.openqa.selenium.support.ui.ExpectedConditions;
var selenium_keys=JavaImporter(org.openqa.selenium.Keys);
WDS.sampleResult.getLatency();
//-----------------------------Login in Application---------------------------------------------
WDS.browser.get('http://xxxxxxxxxxxxxxx/maximo/webclient/login/login.jsp'); //opens website
WDS.log.info("Maximo Application ---- Username and Password dynamicly picked from C:/user.csv ");
//UserName
var userName = WDS.browser.findElement(pkg.By.id('username'));
WDS.log.info("Maximo Application ---- Username "+'${username}');
userName.click();
userName.sendKeys('${username}');
//Password
var password=WDS.browser.findElement(pkg.By.id("password"));
password.click();
WDS.log.info("Maximo Application ---- password "+'${password}');
password.clear();
password.sendKeys('${password}');
WDS.browser.findElement(pkg.By.id("loginbutton")).click();
WDS.log.info("Maximo Application ---- Logged by USER Name--- "+ '${username}');
WDS.sampleResult.sampleEnd();
我真的文恩对常规切换为所有未来的方案将是复杂的
我可以给你关于你的代码的指导。
在一般情况下,即使你在JMeter的使用javascript - 你是调用Java方法。
常规会做相同的,但在语法上是接近的Java。
所以:
def
代替var
声明变量JavaImporter(XYZ)
在脚本的开始import XYZ
support_ui
只是一个例子:
import org.openqa.selenium.*; //need .* to import all classes from package
import org.openqa.selenium.support.ui.WebDriverWait; //import exact class
WDS.sampleResult.sampleStart(); //code remains the same
//var pkg = JavaImporter(org.openqa.selenium); //moved to import
//var support_ui = JavaImporter(org.openqa.selenium.support.ui.WebDriverWait); //moved to import
def wait = new WebDriverWait(WDS.browser, 5000); //removed `support_ui.`
def userName = WDS.browser.findElement(By.id('username')); //removed `pkg.`
最后只是学习Java和常规