- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
只是想问一下为什么 Selenium RC 不能与最新的 Firefox 版本一起使用?
这是代码(常规):
import org.openqa.selenium.server.*;
import com.thoughtworks.selenium.DefaultSelenium
import com.thoughtworks.selenium.Selenium
import com.thoughtworks.selenium.SeleniumException
import com.thoughtworks.selenium.Wait
import java.util.concurrent.TimeUnit
RemoteControlConfiguration rcc = new RemoteControlConfiguration()
System.out.println("Using firefox launcher")
File ffp = new File("C:\\Work\\ff_custom_profile")
rcc.setFirefoxProfileTemplate(ffp)
rcc.setPort(4444)
seleniumServer = new SeleniumServer(rcc)
seleniumServer.start()
System.out.println("Server started")
Selenium seleniumInstance = new DefaultSelenium("localhost", 4444, "firefox", "https://url/")
seleniumInstance.start()
System.out.println("Driver started");
当我使用 Firefox 28 (Windows 7 x86) 运行这段代码时,它运行良好:
Using firefox launcher
20:46:35.692 INFO - Java: Sun Microsystems Inc. 20.14-b01
20:46:35.692 INFO - OS: Windows 7 6.1 x86
20:46:35.723 INFO - v2.43.1, with Core v2.43.1. Built from revision 5163bce
20:46:36.020 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
20:46:36.020 INFO - Version Jetty/5.1.x
20:46:36.020 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
20:46:36.035 INFO - Started HttpContext[/selenium-server,/selenium-server]
20:46:36.035 INFO - Started HttpContext[/,/]
20:46:36.067 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@1114460
20:46:36.067 INFO - Started HttpContext[/wd,/wd]
20:46:36.067 INFO - Started SocketListener on 0.0.0.0:4444
20:46:36.067 INFO - Started org.openqa.jetty.jetty.Server@15e0873
Server started
20:46:36.160 INFO - Checking Resource aliases
20:46:36.191 INFO - Command request: getNewBrowserSession[firefox, https://url/, ] on session null
20:46:36.207 INFO - creating new remote session
20:46:36.238 INFO - Allocated session 640d3bf362ab4840ad7c3f3ac2b5695d for https://url/, launching...
jar:file:/C:/Work/TMP/selenium-server-standalone-2.43.1.jar!/customProfileDirCUSTFFCHROME
20:46:36.925 INFO - Preparing Firefox profile...
20:46:38.127 INFO - Launching Firefox...
20:46:41.537 INFO - Got result: OK,640d3bf362ab4840ad7c3f3ac2b5695d on session 640d3bf362ab4840ad7c3f3ac2b5695d
Driver started
但是当我使用 Firefox 32 或 33 (Windows 7 x86) 运行此代码时,我得到以下信息:
Using firefox launcher
20:49:26.467 INFO - Java: Sun Microsystems Inc. 20.14-b01
20:49:26.467 INFO - OS: Windows 7 6.1 x86
20:49:26.467 INFO - v2.43.1, with Core v2.43.1. Built from revision 5163bce
20:49:26.576 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
20:49:26.576 INFO - Version Jetty/5.1.x
20:49:26.591 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
20:49:26.591 INFO - Started HttpContext[/selenium-server,/selenium-server]
20:49:26.591 INFO - Started HttpContext[/,/]
20:49:26.607 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@1114460
20:49:26.607 INFO - Started HttpContext[/wd,/wd]
20:49:26.623 INFO - Started SocketListener on 0.0.0.0:4444
20:49:26.623 INFO - Started org.openqa.jetty.jetty.Server@15e0873
Server started
20:49:26.669 INFO - Checking Resource aliases
20:49:26.669 INFO - Command request: getNewBrowserSession[firefox, https://url/, ] on session null
20:49:26.669 INFO - creating new remote session
20:49:26.685 INFO - Allocated session 740dfe19fd58418db02be166c420516d for https://url/, launching...
jar:file:/C:/Work/TMP/selenium-server-standalone-2.43.1.jar!/customProfileDirCUSTFFCHROME
20:49:27.247 INFO - Preparing Firefox profile...
20:49:28.386 INFO - Launching Firefox...
请注意输出中的差异:使用 Firefox 28,Selenium 客户端成功启动......
20:46:41.537 INFO - Got result: OK,640d3bf362ab4840ad7c3f3ac2b5695d on session 640d3bf362ab4840ad7c3f3ac2b5695d
...在 Firefox 32 或 33 上失败。
我进行了一些实验,发现我可以通过更改 Firefox 配置文件 (prefs.js) 中的以下设置使其在 FF 32 或 33 中工作:
user_pref("browser.startup.homepage_override.mstone", "33.1.1");
如果我将其更改为我的 FF 28 配置文件 (16.0.2) 中的值:
user_pref("browser.startup.homepage_override.mstone", "16.0.2");
然后,它工作正常。但我不喜欢这种 hack,原因有二:
当我在使用脚本进行此更改后打开 Firefox 时,它会打开 Whatsnew 页面 ( https://www.mozilla.org/en-US/firefox/33.1.1/whatsnew/?oldversion=16.0.2 ),这对于自动化来说非常烦人。
当我在此更改后手动打开 Firefox 时,此设置会恢复到其之前的值 (33.1.1),并且故事从头开始。
我尝试了不同的 Selenium RC 版本(2.41、2.42、2.43),结果相同。
使用 Firefox 32 & 33 和 Selenium RC 2.44,我收到以下错误:无法启动新的浏览器 session :java.lang.RuntimeException:java.lang.RuntimeException:在路径中找不到 Firefox!请将包含“firefox.exe”的目录添加到您的 PATH 环境中。
嗯,我把代码改成...
Selenium seleniumInstance = new DefaultSelenium("localhost", 4444, "*firefox C:\Program Files\Mozilla Firefox\firefox.exe", "https://url/"
...并遇到与上述 Selenium 2.42 和 2.43.1 相同的失败。
那么问题来了:为什么 Firefox 32 或 33 不能与 Selenium RC 一起工作,以及如何让它工作?
注意:我确实意识到迁移到 Selenium 2 (WebDriver) 很有意义,但出于某些原因,我需要在当前状态下支持此遗留代码。
最佳答案
通常 selenium 会在浏览器更新后不久发布更新版本的客户端。关注the downloads page .
关于java - Firefox 32 或 33 是否有望与 Selenium RC 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27175898/
Selenium IDE、Selenium RC 和 Selenium WebDriver 有什么区别;我们可以在什么样的项目中使用它们?任何建议将不胜感激。 最佳答案 Selenium IDE 是一
我的 Selenium 服务器在远程服务器上运行。我从我的本地 PC 启动我的 Selenium 脚本,它从网站获取数据。 例如,我的 Selenium 脚本执行这段 JS 代码: JSON.stri
Selenium 中“//div[.//a[text()='SELENIUM']]”和“//div[//a[text()='SELENIUM']]”有什么区别xpath。 有人可以澄清我在 xpath
我正在创建自动冒烟测试。我读到在单元测试中使用多个断言不是一个好的做法,这条规则是否也适用于使用 selenium 的 webdriver 测试? 在我的冒烟测试中,有时我会使用 20 多个断言来验证
我在一个变量中存储了一个值,在另一个变量中存储了第二个值,现在我想将这两个数字相加。我无法做到这一点,我尝试过下面的代码,但它不起作用 store 6 w sto
Selenium 中的回车键和回车键有什么区别? This related SO answer并且提供的链接说明它们是不同的。我还注意到,在使用 Firefox 24.2 时,回车键将发送一个 HTM
以下是我遇到异常的详细信息: 当我使用以下命令启动节点时,出现如下错误: F:\SeleniumGrid\Jars>java -jar selenium-server-standalone-3.0.0
我是 的新手 Selenium 我对版本号有点困惑。 Selenium 2.0 2011年发布。我刚刚下载了 Selenium IDE Firefox 扩展,版本为 1.7.2 .是否还有 IDE 的
我正在使用 Selenium 运行Codeception 2。我可以看到 Selenium 打开了浏览器并运行了测试。然后,我从代码接收中得到一个错误,即存在失败的断言。 我知道有一个HTML文件可以
Closed. This question needs to be more focused。它当前不接受答案。 想要改善这个问题吗?更新问题,使它仅关注editing this post的一个问题。
我想关闭弹出窗口(已知的窗口名称),然后返回到原始窗口。 我该怎么办? 如果我无法获得窗口中关闭按钮的常量。那么有没有达到目标的一般行为? 最佳答案 你有没有尝试过: selenium.Close()
我正在用webdriver做一个测试机器人。我有一个场景,它单击一个按钮,打开一个新窗口,并且它通过特定的xpath搜索元素,但是有时没有这样的元素,因为可以将其禁用,并且出现此错误:org.open
我是第一次使用Selenium,对这些选项不知所措。我在Firefox中使用IDE。 当我的页面加载时,它随后通过JSONP请求获取值,并在其中填充选择中的选项。 我如何让Selenium等待选择中的
我开始使用nightwatch.js编写e2e测试,我注意到我想在目标浏览器的控制台(开发人员工具)中手动检查一些错误。但总是在我打开开发者控制台时,浏览器会自动关闭它。这是selenium还是nig
我正在尝试使用以下方式刮除Glassdoor的评论: https://github.com/MatthewChatham/glassdoor-review-scraper 但是我得到了错误并且不知道如
背景 我设置了一个Selenium Grid项目,以在两种不同的浏览器Chrome和Firefox中执行测试。我正在使用Gradle执行测试。该测试将成功执行两次,一次按预期在Chrome中执行,一次
当测试失败时,运行 selenium 测试的浏览器将关闭。这在尝试调试时没有帮助。我知道我可以在失败时选择屏幕截图,但如果没有整个上下文,这并没有帮助。在浏览器仍然可用的情况下,我可以回击并检查发生了
使用 Selenium Web 驱动程序而不是 Selenium RC 启动新的测试框架是个好主意吗?对于 Selenium Web 驱动程序,并非所有 Selenium 方法都已实现。那么使用 Se
我使用 selenium 页面对象模型来定义所有页面元素。我对元素命名所遵循的命名约定不太相信,并且感觉太长了。请对此提出建议。 @FindBy(xpath = "//tbody[@id='tabvi
有一个带有按钮的 html 页面,我的 Selenium 测试正在测试,当单击按钮时,会执行一个操作。 问题是,看起来点击发生在 javascript 执行之前 - 在处理程序绑定(bind)到页面之
我是一名优秀的程序员,十分优秀!