Questions tagged «selenium-webdriver»

Selenium-WebDriver提供了WebDriver API,用于控制使用不同编程语言(“语言绑定”)的浏览器。使用此标签时,还请添加所用编程语言的标签。

24
WebDriverException:未知错误:尝试启动Chrome浏览器时DevToolsActivePort文件不存在
我正在尝试使用URL启动chrome,浏览器启动,此后它什么也不做。 1分钟后,我看到以下错误: Unable to open browser with url: 'https://www.google.com' (Root cause: org.openqa.selenium.WebDriverException: unknown error: DevToolsActivePort file doesn't exist (Driver info: chromedriver=2.39.562718 (9a2698cba08cf5a471a29d30c8b3e12becabb0e9),platform=Windows NT 10.0.15063 x86_64) (WARNING: The server did not provide any stacktrace information) 我的配置: 铬:66 Chrome浏览器:2.39.56 PS在Firefox中一切正常

11
随机“元素不再附加到DOM” StaleElementReferenceException
我希望只是我一个人,但是Selenium Webdriver似乎是一场噩梦。Chrome网络驱动程序当前无法使用,而其他驱动程序则非常不可靠,似乎如此。我正在与许多问题作斗争,但这是一个。 随机地,我的测试会因 "org.openqa.selenium.StaleElementReferenceException: Element is no longer attached to the DOM System info: os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.6.0_23'" 我正在使用2.0b3版的网络驱动程序。我已经看到FF和IE驱动程序会发生这种情况。我可以防止这种情况的唯一方法是Thread.sleep在发生异常之前添加一个实际的调用。但是,这是一个很差的解决方法,所以我希望有人指出我的错误,这将使一切变得更好。

9
用硒清除textarea中的文本
我进行了一些测试,这些测试用于检查某些字段中的文本无效时是否出现了正确的错误消息。有效性检查之一是某个textarea元素不为空。 如果此文本区域中已经有文本,我如何告诉硒清除该字段? 就像是: driver.get_element_by_id('foo').clear_field()

29
Webdriver 45000毫秒后无法连接到端口7055上的主机127.0.0.1
我有运行测试的框。似乎Jenkins将ssh并执行正在运行的特定作业中描述的命令。 在这里,我正在尝试运行Selenium Webdriver测试,但是它告诉我启动firefox时出错。最终的想法是完全在此框中运行Webtest,并拍摄一些错误屏幕截图。 我正在使用selenium-java-2.25.jar,firefox 10,Linux OS。 有趣的是,我可以手动插入盒中,暂时将另一个用户的魔术cookie复制到盒中(以获得X隧道),执行export DISPLAY=mydisplay:1.0,然后使用ant启动我的硒测试。这将带来Firefox和测试就好了。 这里有各种线程似乎都存在完全相同的问题,我想我已经尝试了其中的大多数。这是我所做的: 重新启动该框,使用VNC重新登录。 在进行硒测试之前,在Jenkins中放置了一个bash脚本以使其运行。bash脚本基本上只是执行一个export DISPLAY=mydisplay:1.0。它还执行xclock。这可以正常工作,因为我可以看到VNC中显示了xclock。 iptables已关闭 firefox正确位于/ usr / bin / firefox中 sshd_config显示X11Forwarding为true。 据说降级的Firefox帮助了一些人,但我不希望这样做。Webdriver应该仍然支持FF 10。 但是,以上均不能解决问题。 似乎本地主机上的端口7055甚至不存在: netstat -an | grep 7055 -没有印 这是我的/ etc / hosts所说的: 1 127.0.0.1 localhost.localdomain localhost 2 ::1 localhost6.localdomain6 localhost6 也许与本地主机:7055不存在有关?我不确定从这里去哪里。仍然,为什么错误输出display: :0.0在我指定后仍显示正在寻找mydisplay:1.0? 最后我收到的错误输出是: [testng] org.openqa.selenium.firefox.NotConnectedException: Unable to connect …


8
如何使用Java在Selenium WebDriver中执行鼠标悬停功能?
我想在下拉菜单上执行鼠标悬停功能。当我们将鼠标悬停在菜单上时,它将显示新选项。我试图使用xpath单击新选项。但是不能直接单击菜单。因此,作为手动方式,我尝试将鼠标悬停在下拉菜单上,然后单击新选项。 Actions action = new Actions(webdriver); WebElement we = webdriver.findElement(By.xpath("//html/body/div[13]/ul/li[4]/a")); action.moveToElement(we).build().perform();


3
WebDriver click()与JavaScript click()
故事: 在StackOverflow上,我看到用户报告他们无法通过selenium WebDriver“单击”命令单击元素,并且可以通过执行脚本来解决JavaScript单击问题。 Python中的示例: element = driver.find_element_by_id("myid") driver.execute_script("arguments[0].click();", element) WebDriverJS /量角器中的示例: var elm = $("#myid"); browser.executeScript("arguments[0].click();", elm.getWebElement()); 问题: 为什么在常规WebDriver单击不起作用时单击“通过JavaScript”有效?这到底是什么时候发生的,这种解决方法(如果有)的缺点是什么? 我个人使用此变通办法时并未完全理解为什么必须这样做以及它可能导致什么问题。

9
如何使用水豚下拉菜单中选择选项
我正在尝试使用Capybara(2.1.0)从下拉菜单中选择一个项目。 我想按数字进行选择(即选择第二,第三等选项)。 我疯狂地尝试了各种各样的东西,但没有运气,谷歌搜索。 我可以通过使用值来选择它: find("option[value='4c430d62-f1ba-474f-8e8a-4452c55ea0a8']").click 但是我不想使用b / c方法,该值会发生变化,并使我的测试变脆。 下拉菜单的HTML为: <td class="value"> <select name="organizationSelect" id="organizationSelect" class="required"> <option value="NULL">Choose...</option> <option value="4c430d62-f1ba-474f-8e8a-4452c55ea0a8"> Institution1</option> <option value="e1a4efa7-352d-410a-957e-35c8a3b92944"> Institution / test</option> </select> </td> 我也尝试过这个: option = find(:xpath, "//*[@id='organizationSelect']/option[2]").text select(option, :from => organizationSelect) 但这会导致此错误: Ambiguous match, found 2 elements matching option "Institution" (Capybara::Ambiguous) 那么,如何从下拉列表中选择第一个,第二个,第三个等选项(使用Capybara)?

5
如何使用python在Selenium中以编程方式使Firefox无头?
我正在使用python,selenium和firefox运行此代码,但仍获得firefox的“ head”版本: binary = FirefoxBinary('C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe', log_file=sys.stdout) binary.add_command_line_options('-headless') self.driver = webdriver.Firefox(firefox_binary=binary) 我还尝试了一些二进制的变体: binary = FirefoxBinary('C:\\Program Files\\Nightly\\firefox.exe', log_file=sys.stdout) binary.add_command_line_options("--headless")

9
使用Selenium Web驱动程序检索HTML输入的值
在Webapp的HTML中,有以下代码 <input type="text" name="prettyTime" id="prettyTime" class="ui-state-disabled prettyTime" readonly="readonly"> 页面上实际显示的是显示时间的字符串。 硒网络驱动器,我有一个WebElement对象指的是<input>使用 WebElement timeStamp = waitForElement(By.id("prettyTime")); 我想获取的值,WebElement换句话说,就是页面上打印的内容。我尝试了所有的WebElement吸气剂,但没有任何方法可以检索用户看到的实际值。有什么帮助吗?谢谢。


17
未知错误:即使在chromedriver升级后,Selenium Send Keys的调用函数结果也缺少“值”
发送密钥时出现以下错误。 结果消息: System.InvalidOperationException : unknown error: call function result missing 'value' (Session info: chrome=65.0.3325.146) (Driver info: chromedriver=2.33.506120 (e3e53437346286c0bc2d2dc9aa4915ba81d9023f),platform=Windows NT 10.0.14393 x86_64) 我已经将chrome驱动程序更新为2.36,但是我的代码仍在搜索2.33吗? 任何想法 ?


8
如何在Protractor / WebdriverJS中设置默认浏览器窗口大小
出于某种原因,当我在工作中运行测试时,浏览器会最大化,但是当我在家运行测试时,它只会打开大约50%宽度的浏览器窗口。这会导致向下滚动等方面的差异,因此理想情况下,我希望在运行测试的每台计算机上,以相同大小打开浏览器窗口。最好的方法是什么?(我找到了其他语言的一些答案,但无法将它们改编成JavaScript) 新增中 browser.executeScript('window.moveTo(0,0);'+ 'window.resizeTo(screen.width, screen.height);'); 什么都不做(显然window.moveTo,window.resizeToChrome不支持)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.