我正在java中编写一个selenium代码,它将插入用户名和密码,并使用chrome登录网站:
WebElement query = driver.findElement(By.id("usernameInput"));
query.sendKeys("****");
WebElement query2 = driver.findElement(By.id("passwordInput"));
query2.sendKeys("****");
Thread.sleep(1500);
WebElement query3 = driver.findElement(By.className(btn z-btn-default pull-right));
query3.click();
我无法点击登录按钮。 我使用按钮的inspect元素来搜索id或其他要使用但没有成功的东西。 我正在从inspect元素中添加一个截图
答案 0 :(得分:0)
使用这个希望它会帮助你
WebElement query = driver.findElement(By.id("usernameInput"));
query.sendKeys("****");
WebElement query2 = driver.findElement(By.id("passwordInput"));
query2.sendKeys("****");
Thread.sleep(1500);
WebElement query3 = driver.findElement(By.xpath(".//*[@class='btn z-btn-default pull-right']"));
query3.click();
答案 1 :(得分:0)
selenium类名一次只能使用一个类名。尝试使用css选择器或xpath,如下所示。
WebElement query3 = driver.findElement(By.cssSelector(".btn.z-btn-default.pull-right"));
或
WebElement query3 = driver.findElement(By.xpath("//*[@class='btn z-btn-default pull-right']"));
答案 2 :(得分:0)
使用xpath中的其他值
//input[@type='Submit'][@value='LOGIN']
代码:
WebElement query3 = driver.findElement(By.xpath("//input[@type='Submit'][@value='LOGIN']"));
query3.click();
答案 3 :(得分:0)
您无法点击该按钮,因为它似乎已被停用,查看您提供的HTML。
<input type="submit" disabled="disabled" ...>
我认为你需要找出在什么情况下启用提交按钮,并相应地编写你的硒测试。
此外,如果您无法通过其属性唯一标识此提交按钮,则selenium会提供submit()
方法来提交表单,如下所示:
webelement.submit();
请参阅this页面上的文档。
... HTH
答案 4 :(得分:0)
请尝试以下任何代码。
从html
开始,您的LOGIN
按钮位于<input>
标记内。因此,xpath
应该从<input>
代码开始。
driver.findElement(By.xpath("//input[@value='LOGIN'][@type='submit']")).click();
xpath的说明: - 使用<input>
标记以及value
和type
属性启动xpath。
注意: - 而不是使用absolute xpath
使用Relative xpath
OR
您可以使用LOGIN
方法点击JavaScript Executor
按钮。
WebElement login_button = driver.findElement(By.xpath("//input[@value='LOGIN'][@type='submit']"));
((JavascriptExecutor) driver).executeScript("arguments[0].click();", login_button);