gpt4 book ai didi

javascript - Selenium:如何点击 javascript 按钮

转载 作者:行者123 更新时间:2023-12-03 12:29:17 24 4
gpt4 key购买 nike

我必须编写一些用于自动测试的脚本来检查使用 flex/amf 技术构建的 Web 应用程序的加载时间。
测试将包括打开 IE 浏览器、浏览多个选项卡并测量从单击最后一个选项卡到加载页面内容然后关闭浏览器的时间。

我用 Java 编写了一个带有 Selenium Web Driver 和 Junit 的小脚本。脚本打开 IE 窗口,输入登录名和密码。我有“点击”登录按钮的问题。

首先,我尝试通过 findElement 和 By.partiallinktext 查找并单击按钮,但 selenium 告诉我:“无法找到带有部分链接文本的元素”(ctrl+f 在该站点上工作正常)。

我尝试使用 moveByOffset 鼠标单击并按下按钮(机器人类 - 用密码填充字符串后的“选项卡”和“输入”)。所有这些都不起作用。

接下来我找到了 JavascriptExecutor - 我想,它可以解决我的问题,但我应该如何使用这个类?

该网站上的按钮:

<button style="width: 120px;" onclick="javascript:logIn();"> Login </button>

我的java代码:
WebElement button = driver.findElement(By.partialLinkText("Login")); 
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript ("document.getElementByText(\"Login\")).click();", button);

我没有太多的测试经验,所以我会感谢你的帮助。

最佳答案

不要通过 JavaScript。尝试这个:

String xPath = "//button[contains(.,'Login')]";
driver.findElement(By.xpath(xPath))).click();

更好,但未经测试:
// xPath to find a button whose text() (ie title) contains the word Login
String xPath = "//button[contains(text(),'Login')]";
driver.findElement(By.xpath(xPath))).click();

另请注意 https://sqa.stackexchange.com/有关于 Selenium(等)的信息

关于javascript - Selenium:如何点击 javascript 按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52405456/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com