String[] expected = new String[10];
//{"Acapulco","Frankfurt","London","New York","Paris","Portland","San Francisco","Seattle","Sydney","Zurich"};
expected[0] = "Acapulco";
expected[1] = "Frankfurt";
expected[2] = "London";
expected[3] = "New York";
expected[4] = "Paris";
expected[5] = "Portland";
expected[6] = "San Francisco";
expected[7] = "Seattle";
expected[8] = "Sydney";
expected[9] = "Zurich";
List<WebElement> allOptions = driver.findElements(By.name("fromPort"));
// match the fromPort list value against the expected Array
for (int i = 0 ; i < (expected.length) && i < allOptions.size(); i++) {
String optionValue = allOptions.get(i).getAttribute("value");
if (optionValue.equals(expected[i])) {
System.out.println("PASSED on: " + optionValue + " we had: "+ expected[i]);
}
else {
System.out.println("FAILED on: " + optionValue + " we expected: " + expected[i]);
}
}
//close Firefox
driver.close();
当执行循环只会轮一次,然后它的存在......因此,它执行: 传递:阿卡普尔科我们有:阿卡普尔科 然后退出循环...For循环不仅通过一次
My Other Comment新所有这一切的Java和硒....
我假设它的东西做的仅是1大小;:
这是从我的其他评论下面就但不知道如何增加/克服这个
HTML片段添加在意见中的要求:
<tr>
<td align="right">
<font face="Arial, Helvetica, sans-serif" size="2">
<b>
Departing
From:
</b>
</font>
</td>
<td>
<select name="fromPort">
<option value="Acapulco"></option>
<option value="Frankfurt"></option>
<option value="London"></option>
<option value="New York"></option>
<option value="Paris"></option>
<option value="Portland"></option>
<option value="San Francisco"></option>
<option value="Seattle"></option>
<option value="Sydney"></option>
<option value="Zurich"></option>
</select>
您是否尝试过打印list allOptions的大小? –
是的它的打印1 - 这是什么让我相信多数民众赞成在罪魁祸首 - 但如上所述不能确定这一点。但是,它又可能是1作为“循环中的第一个”? – xTNAx
尝试在循环之前打印,尽管结果相同。将需要html片段。 –