无法单击或选择值

时间:2013-11-19 04:30:18

标签: selenium selenium-webdriver selenium-ide

我坚持使用以下方案,尝试单击或从字段中选择值。

有两个字段“测试类型”是一个下拉列表,在从下拉列表中选择值后,“正文部分”字段变为活动状态。

尝试从“身体部位”中选择值,但无法点击或从字段中选择值。

我已从Selenium IDE导出脚本,请告诉我在哪里纠正。

public class test {
  private WebDriver driver;
  private String baseUrl;

  @Before
  public void setUp() throws Exception {
    driver = new FirefoxDriver();
    baseUrl = "https://nyrp.opendr.com/search/client-search/pid/VFZSRk5FNVJQVDA9?script=javascript&badge=1";
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
  }

  @Test
  public void test() throws Exception {
    driver.get(baseUrl + "search/client-search/pid/VFZSRk5FNVJQVDA9?script=javascript&badge=1");
    driver.findElement(By.id("typeoftest_1")).click();
    new Select(driver.findElement(By.id("typeoftest_1"))).selectByVisibleText("MRA");
    Thread.sleep(500);


    for (int second = 0;; second++) {
        if (second >= 60) fail("timeout");
        try { if (isElementPresent(By.id("bodypart_1"))) break; } catch (Exception e) {}
        Thread.sleep(1000);
    }

    driver.findElement(By.id("bodypart_1")).click();
    driver.findElement(By.cssSelector("#bodyPartList_1 > li > div.mailval.")).click();
    driver.findElement(By.cssSelector("a.search")).click();

  }

private boolean isElementPresent(By id) {
    // TODO Auto-generated method stub
    return false;
}

}

以下是“Body Part”字段的HTML CODE:

                <div id="bodypart_box_1">
                    <div style="position:absolute;left:185px;z-index: 20">
                        <ul class="parent">
                            <li>
                                <div id="main" class="mailval">events=Object { click=[1]}handle=function()
                                    <input id="bodypart_1" class="bodypart" type="text" onfocus="if($(this).hasClass('disabled')){$(this).blur();}" readonly="readonly" value="Select One" name="bodypart_1" title="">
                                    <input id="actualBodypart_1" type="hidden" value="" name="actualBodypart_1">
                                </div>
                        <ul id="bodyPartList_1" class="top sub bodyPartList" style="display: none;">olddisplay="none"
                            <li>
                                <div class="mailval " title="Head" originaltitle="Head">Head</div>events=Object { click=[1], mouseover=[1]}handle=function()
                            </li>
                            <li>
                                <div class="mailval " title="Neck" originaltitle="Neck">Neck</div>events=Object { click=[1], mouseover=[1]}handle=function()
                            </li>
                            <li>
                                <div class="mailval " title="Pelvis" originaltitle="Pelvis">Pelvis</div>events=Object { click=[1], mouseover=[1]}handle=function()
                            </li>
                        </ul>
                            </li>
                        </ul>
                    <div style="clear:both"></div>
                </div>

0 个答案:

没有答案