Selenium是否有一个已知的错误报告将SendKeys()发送到错误的输入框?

时间:2013-11-15 21:25:33

标签: c# ajax selenium selenium-webdriver

问题:

我遇到了Selenium本身的一个错误,它正在向我发送密钥的前一个元素执行SendKeys(),而不是一个新的。

截图:

HTML code:

<div class="w2ui-label">
    Provider Name
</div>
<div class="w2ui-field w2ui-required">
    <input id="ProviderName" type="text" style="width: 225px;" maxlength="100" name="ProviderName"></input>
</div>
<table>
    <tbody>
        <tr>
            <td style="width: 250px;">
                <div class="w2ui-label">
                    User Name
                </div>
                <div class="w2ui-field w2ui-required">
                    <input id="UserName" type="text" style="width: 225px;" maxlength="100" name="UserName"></input>
                </div>

C#代码:

[FindsBy(How = How.Id, Using = "ProviderName")]
public IWebElement ProviderNameInput { get; set; }

[FindsBy(How = How.Id, Using = "UserName")]
public IWebElement UserNameInput { get; set; }

ProviderNameInput.SendKeys(providerName + Keys.Tab);
UserNameInput.SendKeys(username + Keys.Tab);

AJAX:

我被告知有一个AJAX请求会触发User Name字段以验证用户名,但是对于Provider Name字段没有类似的请求,所以我不确定为什么Selenium会挂断它领域。我尝试过使用AJAX服务员(等待所有jQuery请求完成后再继续),但没有成功。

环境:

  • Selenium的.NET版本,版本2.35.0
  • Firefox 24.0
  • NUnit test runner
  • Windows 7 SP1 64位

0 个答案:

没有答案