从硒的 html 表单中选择输入字段



我想从硒的以下形式中选择输入字段。我尝试了很多方法,但没有找到帮助,我的测试总是失败。这是 html 表单:

    `<form class="login" action="/Index/trylogin/?ru=L015RmlueWE=" novalidate>
        <fieldset>
            <label>
                <input type="text" maxlength="14" tabindex="1" value="" placeholder="Pseudonym">
            </label>
            <label>
                <input type="password" maxlength="20" tabindex="2" data-ch="8H7vtP9f9tns3TGMJ6F995kTyLSmwFsdDlIyBLhBBsrrW1ZHIZiec4cPqF7C5sp5" data-ch2="1782447a8c3759d4407ed522b831806e8cfde5dc" placeholder="Kennwort">
            </label>
            <input type="submit" value="Anmelden" class="button button-style1"> 
            <div class="login-options">
                <label>
                    <input type="checkbox" value="1" name="stayon">Automatisch anmelden (auf diesem Gerät)
                </label>
            </div>
        </fieldset>
    </form>`

她是我的测试方法

[TestMethod]
public void Login_FinYa_System()
{
    IWebElement login = _driver.FindElement(By.XPath("//form[1]"));
    IWebElement pass = _driver.FindElement(By.XPath("//form[2]"));
    login.Click();
    login.SendKeys("helo");
    pass.Click();
    pass.SendKeys("123");
    pass.SendKeys(Keys.Enter);
    Assert.AreEqual("hello", "hello");
}

您使用了不正确的 xpath 作为登录名和密码字段。

试试这个。

WebElement login = driver.findElement(By.xpath("//input[@type='text']"));
WebElement password = driver.findElement(By.xpath("//input[@type='password']"));
login.click();
login.sendKeys("hello");
pass.click();
pass.sendKeys("123");
pass.sendKeys(Keys.Enter);
Assert.assertEquals("hello", "hello");

相关内容

  • 没有找到相关文章

最新更新