Selenium :: WebDriver :: Error :: ElementNotVisibleError和Watir :: Wait :: TimeoutError:

时间:2014-08-14 09:12:37

标签: javascript ruby selenium watir-webdriver

我正面对Selenium::WebDriver::Error::ElementNotVisibleError and Watir::Wait::TimeoutError

我有一个片段来点击叠加层上的设备名称,然后点击“保存”按钮。问题是这段代码在IE中运行良好但在FF中我遇到了这个问题。

步骤1:单击所需的设备名称。以下是HTML。

<div class="xwtObjectSelectorListTextAligned" tabindex="0" dojoattachpoint="osItemTextNode" aria-label="DeviceName" style="margin-left: 23px; max-width: 198px;">
    DeviceName
</div>
@browser.div(:class=>'xwtObjectSelectorListTextAligned',:text=>"DeviceName").when_present(30).click

这里的问题是在IE中这种点击发生了很好并且选择了所需的设备。
但是在FF中,没有错误抛出此声明,但选择没有发生。

步骤2:选择设备后,我们需要点击叠加层上的确定按钮。下面是该部分的HTML。

    <span id="domCallprocessors_applyButton" class="dijitReset dijitStretch xwt-TextButtonContents" aria-labelledby="domCallprocessors_applyButton_label" role="button" data-dojo-attach-point="titleNode,focusNode" tabindex="0">

        <span class="dijitReset dijitInline dijitIcon dijitNoIcon" data-dojo-attach-point="iconNode"></span>
        <span class="dijitReset dijitToggleButtonIconChar"> … </span>
        <span id="domCallprocessors_applyButton_label" class="dijitReset dijitInline xwt-TextButtonText" data-dojo-attach-point="containerNode">

            OK

        </span>
    </span>


 @browser.span(:id=>'domCallprocessors_applyButton').when_present(30).click<br>

在本声明的FF中,我面临以下错误。

 Watir::Wait::TimeoutError:
   timed out after 30 seconds, waiting for {:id=>"domCallprocessors_applyButton", :tag_name=>"span"} to become present<br>

任何人都可以建议解决这个问题。

以下是版本详情。

selenium (0.2.11) 
selenium-webdriver (2.37.0) 
watir-webdriver (0.6.4) 
Firefox Version: 24.7.0

0 个答案:

没有答案