Tag: selenium

使用webdriver关闭除第一个选项卡/主选项卡以外的所有打开的选项卡

任何人都可以告诉我如何使用webdriver关闭除第一个选项卡/主选项卡以外的所有打开的选项卡? 我在下面尝试过,但它也关闭了所有标签,包括第一个标签。 public static void closeTabs() { String wh1=driver.getWindowHandle(); String cwh=null; while(wh1!=cwh) { new Actions(driver).sendKeys(Keys.CONTROL).sendKeys(Keys.NUMPAD1).perform(); driver.findElement(By.tagName(“body”)).sendKeys(Keys.CONTROL, Keys.TAB); cwh=driver.getWindowHandle(); driver.findElement(By.tagName(“body”)).sendKeys(Keys.CONTROL+”w”); } } 请帮帮我。

使用selenium处理弹出窗口

我有一种情况,点击链接网页打开一个弹出窗口。 弹出窗口打开后,焦点位于弹出窗口中,主窗口被禁用。 我无法将控件转移到弹出窗口。 请查看以下代码。 driver.findElement(By.linkText(“Click me”)).click();// when this line of code is reached then a popup window opens. System.out.println(“After Clicking me”); // After the popup window opens this line of code is never executed. 我无法将控件从父窗口传输到弹出窗口。 我知道以下命令。 driver.switchTo().window(“popup window”); 但它没有多大帮助。 请帮帮我。

RSelenium UnknownError – 使用谷歌浏览器的java.lang.IllegalStateException

我正在运行基于RSelenium Basics CRAN页面的以下脚本: library(RSelenium) startServer(args = c(“-port 4455”), log = FALSE, invisible = FALSE) remDr <- remoteDriver(browserName = "chrome") remDr$open() 这会产生以下错误: Exception in thread “main” java.net.BindException: Selenium is already running on port 4444. Or some other service is. at org.openqa.selenium.server.SeleniumServer.start(SeleniumServer.java:492) at org.openqa.selenium.server.SeleniumServer.boot(SeleniumServer.java:305) at org.openqa.selenium.server.SeleniumServer.main(SeleniumServer.java:245) at org.openqa.grid.selenium.GridLauncher.main(GridLauncher.java:64) 根据GitHub上这个对话的评论,我修改了我的startServer()命令,如下所示: startServer(args = c(“-port 4455”), log = FALSE, invisible […]

Selenium WebElement.click()与Javascript点击事件

我想知道调用WebElement的click()方法与通过id查找元素和使用JavaScript触发click事件之间的区别是什么。 为了清楚第一种方法,我调用WebElement实例的.click .click() : myWebElement.click(); 第二种技术是: ((JavascriptExecutor)driver).executeScript(“document.getElementById(‘myElementID’).click()”); 我很想知道这两种点击网络元素的技术之间的差异,以及每种技术的优缺点。

如何使用Selenium WebDriver和Java从图像(validation码)中读取文本

我有注册网页,但在最后validation码显示.. 我无法从图像中读取文本。 我要提一下代码和输出.. @Test public void loginTest() throws InterruptedException { System.out.println(“Testing”); driver.get(“https://customer.onlinelic.in/ForgotPwd.htm”); WebElement element = driver.findElement(By.xpath(“//*[@id=’forgotPassword’]/table/tbody/tr[5]/td[3]/img”)); System.out.println(” get the instance “); String elementTest = element.getAttribute(“src”); System.out.println(“Element : ” + elementTest); } 输出:错误 线程“main”中的exceptionorg.openqa.selenium.NoSuchElementException:无法定位元素:{“method”:“xpath”,“selector”:“// [@ id =’forgotPassword’] / table / tbody / tr [ 5] / td [3] / img“}命令持续时间或超时:60.02秒有关此错误的文档,请访问: http ://seleniumhq.org/exceptions/no_such_element.html构建信息:版本:’2.35.0′ ,修订版:’8df0c6b’,时间:’2013-08-12 15:43:19’系统信息:os.name:’Windows 7’,os.arch:’amd64’,os.version:’6.1’,java .version:’1.6.0_26’会话ID:5f5b2e1a-56a4-49ad-8fd3-2870747a7768驱动信息:org.openqa.selenium.firefox.FirefoxDriverfunction[{platform […]

我们如何使用Selenium WebDriver获得加载页面的准确时间?

我们如何使用Selenium WebDriver获得加载页面的准确时间? 我们使用Thread.sleep 我们使用implicitlyWait 我们使用WebDriverWait 但是如何使用Selenium WebDriver获取加载页面的确切时间?

如何在iframe中的Rich Text编辑器中使用SendKeys(webdriver)命令

我面临以下问题。我无法在iframe中输入文本编辑器中的文本:这是html: 这是我到目前为止所做的,但测试成功通过,文本编辑器中没有写入任何文本。可能解决方案是使用Javascript执行程序,但我不熟悉它。 WaitTool.waitForElementPresent(Browser.instance, By.tagName(“iframe”), 10); WebElement iframe = Browser.instance.findElement(By.tagName(“iframe”)); Browser.instance.switchTo().frame(iframe); WebElement description=Browser.instance.findElement(By.xpath(“//body[@class=’cke_editable cke_editable_themed cke_contents_ltr’]”)); description.click(); description.sendKeys(“someText”); Browser.instance.switchTo().defaultContent(); 提前致谢!

如何使用chrome驱动程序使用Java覆盖selenium2中的基本身份validation?

如何在selenium2 chrome驱动程序中覆盖基本身份validation? 我在我的项目中面临一个问题,即“需要身份validation”弹出窗口即将阻止webdriver继续导航。 请找到相同的附件截图。 我使用以下代码来实例化chrome驱动程序, private WebDriver driver; @Override protected void setUp() throws Exception { super.setUp(); System.setProperty(“webdriver.chrome.driver”, “C:/Selenium/chromedriver.exe”); driver = new ChromeDriver(); } @Override protected void tearDown() throws Exception { // TODO Auto-generated method stub super.tearDown(); } 能否请你帮忙 – 谢谢,

等待元素 – WebDriver – PageObject模式

只要我使用PageObject模式,我就想知道在动态页面上应该在哪里等待元素。 假设我们有测试方法和pageObject类。 我应该做什么(在测试方法中): 点击按钮 等待元素显示 validation元素(包含例如方法isElementDisplayed()) 或者也许有其他好的做法等待元素? 也许我们应该等待在PageObject.class中的方法isElementDisplayed中的元素?

使用JQuery选择和识别元素以在Selenium 2 Java API中使用它

情况就是这样: 我使用Selenium 2的Java API来打开和控制firefox浏览器实例 我通过JavaScript执行将jQuery脚本加载到页面 然后我使用jQuery表达式来选择元素并遍历DOM树 现在是我的问题,我能以某种方式找到每个找到的元素的唯一标识符吗? 我的目标是通过使用Xpath或CSS选择器与Selenium获得相同的元素。 因此,如果我可以为jQuery中的元素生成一个明确的选择器,那将是最直接的。 其他想法也是受欢迎的。 我需要一种自动方法来识别jQuery中的元素,这些元素可以“转换”为Selenium元素/定位器。 /编辑 为了更清楚: 如果我在jQuery中选择了一个元素: webDriver.executeScript(“var element = $(‘#myDiv input.test’)”); 现在,我想要这样的事情: WebElement webElement = webDriver.executeScript(“return element”); 那可能吗?