循环一组xpath并检查测试值jmeter webdriver

问题描述 投票:0回答:1

我有大约 100 个 xpath,它们仅在最后的索引上有所不同

样本 xpath 的范围为

(//div[@class='something']//div[@class='some other thing'])[1] 到

(//div[@class='某物']//div[@class='其他某物'])[100]

我有一个 CSV 文件,其中每个字段都有预期值。最好的循环方式是什么 通过这些 xpath 并获取这些路径的 text() 并检查它们是否符合 CSV 文件中的预期值?请注意,我在 jmeter 的 webdriver 采样器中执行此操作,将语言保持为 javascript。如果您可以分享任何代码片段,那将非常有帮助。

目前我正在尝试找到每个 xpath 并从中获取文本,并将其与 webdriver 采样器中的预期值(硬编码值)进行比较。但这使得代码行太多。

loops jmeter webdriver
1个回答
0
投票

您是否在问如何在 JavaScript 中创建 for 循环

for (var i = 1; i <= 100; i++) {
  var xpath = "(//div[@class='something']//div[@class='some other thing'])[" + i + "]"
  var actualText = WDS.browser.findElement(org.openqa.selenium.By.xpath(xpath)).getText()
  var expectedText = org.apache.commons.io.FileUtils.readLines(new java.io.File('/path/to/your/file.csv')).get(i-1)
  if (actualText != expectedText) {
      WDS.sampleResult.setFailure(true)
      WDS.sampleResult.setFailureMessage("Text mismatch")
  }
}

关于使用 JavaScript 作为语言,总体想法并不是很好。

© www.soinside.com 2019 - 2024. All rights reserved.