这件事需要帮助。同时学习Java和selenium并不好,但必须做到:
我正在尝试测试一个下拉点框,其中包含:
<select name="sport" id="sport">
<option value="1">Soccer</option>
<option value="2">Basketball</option>
</select>我要执行以下操作: 1:“断言”框存在,其文本为“足球”和“篮球”。2:单击“篮球”,然后再次单击“足球”。3:在本方框下面的表格中声明更改。(我认为这样做了,但需要上面的说明)
目前为止的代码:
Select sportDropdown = new Select(webBrowser.findElement(By.id("sport")));
sportDropdown.selectByVisibleText("Soccer");
assertEquals(sportDropdown, "Soccer");收到的错误:
预期:org.openqa.selenium.support.ui.Select@278806c4 java.lang.AssertionError:足球
我不知道这个“预期”值是从哪里来的,所以任何指针都会是很棒的人。
注意,这都是用Java编写的,所以请不要在C#中提交代码帮助。让我的生活变得更艰难
谢谢J
发布于 2013-08-13 15:42:34
您需要获得所选选项的文本才能使assert语句正常工作。目前,您正在询问WebElement对象是否等于String。
Select sportDropdown = new Select(webBrowser.findElement(By.id("sport")));
sportDropdown.selectByVisibleText("Soccer");
assertEquals(sportDropdown.getFirstSelectedOption().getText(), "Soccer");发布于 2013-11-19 19:12:04
对于值等于文本值的任何人,请使用get属性。对我起作用了。可能是为别人工作。
选择sportDropdown = needed (driver.findElement(By.id(“id”));sportDropdown.selectByValue(" value ");Thread.sleep(3000);//这是需要的,因为只要选择了该值,页面就会刷新。System.out.println(driver.findElement(By.id("id")).getAttribute("value"));
https://stackoverflow.com/questions/18212789
复制相似问题