以前,在Mule 3.x.x中,我们可以使用groovy脚本设置变量。 package com.w2o.testcases;
import org.openqa.selenium.By;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import com.w2o.base.TestBase;
public class AddCustomerTest extends TestBase {
@Test(dataProvider="getData")
public void addCustomer(String firstName,String lastName,String postCode) throws InterruptedException{
driver.findElement(By.cssSelector(OR.getProperty("addCustBtn")));
driver.findElement(By.cssSelector(OR.getProperty("firstname"))).sendKeys(firstName);
driver.findElement(By.cssSelector(OR.getProperty("lastname"))).sendKeys(lastName);
driver.findElement(By.cssSelector(OR.getProperty("postcode"))).sendKeys(postCode);
driver.findElement(By.cssSelector(OR.getProperty("addbtn"))).clear();
}
@DataProvider
public Object[][]getData(){
String sheetName="AddCustomerTest";
int rows = excel.getRowCount(sheetName);
int cols = excel.getColumnCount(sheetName);
Object[][] data = new Object[rows-1][cols];
for(int rowNum=2; rowNum<=rows; rowNum++){//2
for(int colNum=0; colNum<cols; colNum++){
data[rowNum-2][colNum]=excel.getCellData(sheetName, colNum, rowNum);
}
}
return data;
}
}'
。
我似乎找不到办法了。我知道the子消息的结构已经更改,但是有没有办法像在Mule 3中那样从Mule 4脚本中设置变量/属性?
先谢谢了。
答案 0 :(得分:1)
否,在Mule 4中无法直接修改var。
您可以使用target属性将脚本的返回值设置为直接转到变量,该值是变量的名称:
<scripting:execute engine="groovy" target="myVar">
可能也是最好的-保持脚本与m子细节分离。