【发布时间】:2019-11-18 00:17:51
【问题描述】:
String beforeXpath= "//div[@data-dyn-rowid='"
String afterXpath="']//input[@name='ONGSROActivityLine_Quantity']"
WebDriver driver = DriverFactory.getWebDriver()
List list = driver.findElements(By.xpath('//input[@name=\'ONGSROActivityLine_Quantity\']'))
int countList = list.size()
println(countList)
for (def i = 1; i <=countList; i++) {
List<String> actualXpath = beforeXpath+ i +afterXpath
String selectAll = Keys.chord(Keys.CONTROL, "a")
driver.findElements(By.xpath(actualXpath)).sendKeys(selectAll)
driver.findElements(By.xpath(actualXpath)).sendKeys(Keys.DELETE)
driver.findElements(By.xpath(actualXpath)).sendKeys(Keys.DELETE)
driver.findElements(By.xpath(actualXpath)).sendKeys("10")
//WebUI.sendKeys(findTestObject("//div[@data-dyn-rowid='"+i+"']//input[@name='ONGSROActivityLine_Quantity']"),Keys.chord(Keys.CONTROL, 'a'))
// WebUI.sendKeys(findTestObject("//div[@data-dyn-rowid='"+i+"']//input[@name='ONGSROActivityLine_Quantity']"),
//Keys.chord(Keys.DELETE))
// WebUI.sendKeys(findTestObject('Native Trax/Page_ONGNativeTraxCount -- Finance and Operations/input_Qty_ONGSROActivityLine_Quantity'),
// '10')
// WebUI.sendKeys(findTestObject('Native Trax/Page_ONGNativeTraxCount -- Finance and Operations/input_Qty_ONGSROActivityLine_Quantity'),
// Keys.chord(Keys.ENTER))
}
错误
原因: org.codehaus.groovy.runtime.typehandling.GroovyCastException:无法使用类“java.lang”转换对象“//div[@data-dyn-rowid='1']//input[@name='ONGSROActivityLine_Quantity']”。字符串'到类'java.util.List' 在 Native Trax.run(Native Trax:84) 在 com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:194) 在 com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:119) 在 com.kms.katalon.core.main.TestCaseExecutor.runScript(TestCaseExecutor.java:337) 在 com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:328) 在 com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:307) 在 com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:299) 在 com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:233) 在 com.kms.katalon.core.main.TestSuiteExecutor.accessTestCaseMainPhase(TestSuiteExecutor.java:169) 在 com.kms.katalon.core.main.TestSuiteExecutor.accessTestSuiteMainPhase(TestSuiteExecutor.java:142) 在 com.kms.katalon.core.main.TestSuiteExecutor.execute(TestSuiteExecutor.java:91) 在 com.kms.katalon.core.main.TestCaseMain.startTestSuite(TestCaseMain.java:157) 在 com.kms.katalon.core.main.TestCaseMain$startTestSuite$0.call(未知来源) 在 TempTestSuite1573849158556.run(TempTestSuite1573849158556.groovy:36)
【问题讨论】:
标签: web dynamic datatables katalon-studio katalon-recorder