我正在使用Selenium来自动化web应用程序的一些UI单击。其中一页我有几个按钮导致一些细节。他们都有相同的名字,但我可以点击任何一个,所以我只是点击第一个。但是...有时起作用,有时不起作用。
WebElement DetailsButton = setPresentElementByXpath("//input[1][@type='button' and @value='Go to Details']");
DetailsButton.click();
private WebElement setPresentElementByXpath(String xpath) throws Exception {
WebElement myDynamicElement = (new WebDriverWait(driver, 15))
.until(ExpectedConditions.presenceOfElementLocated(By.xpath(xpath)));
return myDynamicElement;
}
编辑:我忘了提到它失败的地方。它在detailsbutton.click();
中没有问题,但是在单击下一件事情时失败了,截图和日志显示单击按钮后应该显示的页面不在那里,所以我假设按钮没有被单击。
页面加载速度变化和缓存可能是问题所在。如果元素未找到异常正在发生,请使用显式等待,通过ExpectedConditions.ElementTobeclickable(By)将其单击。
WebElement myDynamicElement = (new WebDriverWait(driver, 10)).until(ExpectedConditions.elementToBeClickable(By.id("myDynamicElement")));
如果发生异常“另一个元素将接收单击”,则可以直接使用JavaScriptExecutor单击该元素。注意:JS操作没有返回值(如果它工作与否),并且在单击之后发生页面加载时,它不会像Selenium.click()那样等待页面加载。
((IJavaScriptExecutor)driver).ExecuteScript("arguments[0].click()", element);
问题内容: 我试图单击一些按钮,并以抽搐为例使用“跟随”按钮。 我使用Selenium IDE尝试获取按钮的xpath。我得到的xpath是: 如果我转到FireFox并为按钮复制唯一选择器,则会得到: 我在Java程序中都尝试过,但它们都无效。当我使用xpath时,出现以下错误: 编辑: 我要单击的带有按钮的网站示例(“关注”按钮):http : //www.twitch.tv/mradder8
我有一个点击单选按钮的代码,一开始我用的是Chrome。使用下面的代码: 我发现了一个错误: 做研究的时候,我把代码改成: 当我单击单选按钮时,标签会在单击时获得一个附加属性。 其他编辑: 这组按钮如下所示:
我正在测试一个网页,我需要选择几个复选框,然后点击提交。 HTML代码段
问题内容: 我在Angular中有一个表单,其中有两个按钮标签。一键提交表单。另一个按钮仅用于使用进行导航。但是,当单击第二个按钮时,AngularJS导致页面刷新,从而触发404。我在函数中删除了一个断点,并触发了我的函数。如果我执行以下任何操作,它将停止: 如果删除,该按钮不会导致页面刷新。 如果我注释掉函数中的代码,则不会刷新页面。 如果我使用将按钮标签更改为锚标签(),则不会刷新。 后者似
我正在尝试在Selenium中测试图像按钮点击。 图像是事件,当我点击sgt消息出现我 超文本标记语言代码:
按钮单击在selenium webdriver中不工作。 尝试使用类名和xpath。 提交订单