- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
出于某种原因,我的代码在应使用phantomjs时尝试使用firefox浏览器。
我的常规代码如下所示:
import geb.Browser
...
env = System.getenv()
def username = env.username
def password = env.password
def gateway = env.gateway
def matcher = gateway =~ /^(https?:\/\/)([^:^\/]*)(:\d*)?(.*)?.*$/
def host = matcher[0][2]
def port = matcher[0][3]
if (env.driver == 'firefox') {
driver = new FirefoxDriver()
} else {
println env.phantomjspath
def caps = DesiredCapabilities.phantomjs()
caps.setCapability(
PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, env.phantomjspath
)
driver = new PhantomJSDriver(caps)
driver.manage().window().setSize(new Dimension(1028, 768))
}
def browser = new Browser(driver: driver)
BiHome = "https://" + username + ":" + password + "@" + host + port + "/gateway/default/BigInsightsWeb/#/welcome"
browser.drive {
go BiHome
// code omitted for brevity
}
browser.close()
:CheckHomePhantomJS
/Users/snowch/Repos/biginsight-examples2/examples/BiginsightsHome/build/webdriver/phantomjs/bin/phantomjs
May 10, 2016 10:13:57 AM org.openqa.selenium.phantomjs.PhantomJSDriverService <init>
INFO: executable: /Users/snowch/Repos/biginsight-examples2/examples/BiginsightsHome/build/webdriver/phantomjs/bin/phantomjs
May 10, 2016 10:13:57 AM org.openqa.selenium.phantomjs.PhantomJSDriverService <init>
INFO: port: 19084
May 10, 2016 10:13:57 AM org.openqa.selenium.phantomjs.PhantomJSDriverService <init>
INFO: arguments: [--webdriver=19084, --webdriver-logfile=/Users/snowch/Repos/biginsight-examples2/examples/BiginsightsHome/phantomjsdriver.log]
May 10, 2016 10:13:57 AM org.openqa.selenium.phantomjs.PhantomJSDriverService <init>
INFO: environment: {}
PhantomJS is launching GhostDriver...
[INFO - 2016-05-10T09:13:58.925Z] GhostDriver - Main - running on port 19084
[INFO - 2016-05-10T09:13:59.117Z] Session [8784a390-168f-11e6-bcd7-a7a5f8e205b1] - page.settings - {"XSSAuditingEnabled":false,"javascriptCanCloseWindows":true,"javascriptCanOpenWindows":true,"javascriptEnabled":true,"loadImages":true,"localToRemoteUrlAccessEnabled":false,"userAgent":"Mozilla/5.0 (Macintosh; Intel Mac OS X) AppleWebKit/534.34 (KHTML, like Gecko) PhantomJS/1.9.7 Safari/534.34","webSecurityEnabled":true}
[INFO - 2016-05-10T09:13:59.117Z] Session [8784a390-168f-11e6-bcd7-a7a5f8e205b1] - page.customHeaders: - {}
[INFO - 2016-05-10T09:13:59.117Z] Session [8784a390-168f-11e6-bcd7-a7a5f8e205b1] - Session.negotiatedCapabilities - {"browserName":"phantomjs","version":"1.9.7","driverName":"ghostdriver","driverVersion":"1.1.0","platform":"mac-unknown-32bit","javascriptEnabled":true,"takesScreenshot":true,"handlesAlerts":false,"databaseEnabled":false,"locationContextEnabled":false,"applicationCacheEnabled":false,"browserConnectionEnabled":false,"cssSelectorsEnabled":true,"webStorageEnabled":false,"rotatable":false,"acceptSslCerts":false,"nativeEvents":true,"proxy":{"proxyType":"direct"}}
[INFO - 2016-05-10T09:13:59.117Z] SessionManagerReqHand - _postNewSessionCommand - New Session Created: 8784a390-168f-11e6-bcd7-a7a5f8e205b1
Exception in thread "main" org.openqa.selenium.WebDriverException: Cannot find firefox binary in PATH. Make sure firefox is installed. OS appears to be: MAC
Build info: version: '2.53.0', revision: '35ae25b1534ae328c771e0856c93e187490ca824', time: '2016-03-15 10:43:46'
System info: host: 'xxxxxxx', ip: 'xxxxx', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: 'xxxxx', java.version: '1.8.0_66'
Driver info: driver.version: FirefoxDriver
at org.openqa.selenium.firefox.internal.Executable.<init>(Executable.java:75)
at org.openqa.selenium.firefox.FirefoxBinary.<init>(FirefoxBinary.java:60)
at org.openqa.selenium.firefox.FirefoxBinary.<init>(FirefoxBinary.java:56)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:120)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
....
import org.apache.tools.ant.taskdefs.condition.Os
// set the dependencies for running the groovy script
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.codehaus.groovy:groovy-all:latest.release'
}
}
plugins {
id 'groovy'
}
apply from: "osSpecificDownloads.gradle"
// set the dependencies for compiling the groovy script
repositories {
mavenCentral()
}
dependencies {
compile 'org.codehaus.groovy:groovy-all:latest.release'
compile 'org.codehaus.geb:geb-core:latest.release'
compile 'org.seleniumhq.selenium:selenium-firefox-driver:2.53.0'
compile('com.codeborne:phantomjsdriver:1.3.0') {
transitive = false
}
}
// tell gradle the groovy script is in the same folder as the build.gradle file
sourceSets {
main {
groovy {
srcDirs = ['.']
}
}
}
Properties props = new Properties()
props.load(new FileInputStream("$projectDir/../../connection.properties"))
task("CheckHomePhantomJS", type: JavaExec) {
dependsOn unzipPhantomJs
def phantomJsFilename = Os.isFamily(Os.FAMILY_WINDOWS) ? "phantomjs.exe" : "bin/phantomjs"
environment 'phantomjspath', new File(unzipPhantomJs.outputs.files.singleFile, phantomJsFilename).absolutePath
environment 'driver', 'phantomjs'
environment 'gateway', props.gateway
environment 'username', props.username
environment 'password', props.password
main = 'CheckHome'
classpath = sourceSets.main.runtimeClasspath
}
最佳答案
调用时,Geb会创建一个新的Browser实例。
Browser drive(Closure script)
Browser drive(Browser browser, Closure script)
Browser.drive(browser) {
go BiHome
// code omitted for brevity
}
关于gradle - geb.Browser尝试使用FirefoxDriver代替PhatomJSDriver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37134240/
这个问题已经有答案了: What does it mean to "program to an interface"? (33 个回答) Is this correct - FirefoxDriver
我看到几乎每个人都使用语句 WebDriver driver=new FirefoxDriver(); 这里我们创建了一个 FirefoxDriver 类的实例,其类型为 Webdriver;如果我直
上周有很多关于这个名为 Marionette 的新 FirefoxDriver 的噪音。为了将 Firefox 与 Selenium 一起使用,我们曾经使用“旧的”Selenium FirefoxDr
我制作了一个 Java 应用程序,它将从我们的暂存环境中获取的屏幕截图与生产环境中的屏幕截图进行比较。由于屏幕截图尺寸不同,应用程序失败。 如何定义屏幕截图尺寸?我使用以下代码来生成屏幕截图。
有人解决了吗? 每当我有提交按钮时,我都必须进入解决方法并向其发送“Enter”键。更具体地说: WebDriver driver = new FirefoxDriver(); driver.ge
一段时间以来,我们一直在使用 FirefoxDriver 执行一组基于 WebDriver 2.25.0 的自动化测试。测试由基于 Maven 3.0 的构建及其 FailSafe 插件并行执行(在四
我在 stackoverflow 上发现了一个与我类似的错误,并使用以下方法将 selenium webdriver jar 文件添加到项目中: 右键单击项目--> 转到构建路径--> 配置构建路径-
当我运行以下代码时,我不断收到 unsupportedCommandException: System.setProperty("webdriver.firefox.bin","C:\\Program
我期望浏览器显示代理值,但它显示了我的实际 IP。知道为什么吗? ''' FirefoxOptions options = new FirefoxOptions(); options.addPrefe
public class Tester implements Runnable { public Tester() { // Init WebDriver Fi
尝试在 weebly 中自动创建一个网站,一切正常,直到我进入主题选择页面。您需要将鼠标悬停在图片上,以便选择按钮可见。到目前为止我的代码。 WebDriver driver = new F
我试图告诉Selenium的org.openqa.selenium.firefox.FirefoxDriver使用现有的配置文件及其cookies和代理设置,所以我我正在做: FirefoxProfi
我正在尝试检索 JavaScript 全局变量的值,但在 FireFox 中运行测试时总是得到 undefined。 此测试在 Chrome 中成功。 index.html window.
我第一次尝试使用 Selenium 来驱动 Firefox。我使用几乎相同的代码来驱动 Chrome,没有问题。但是,当我尝试使用 Firefox 驱动程序时,浏览器打开、停止,然后在大约 60 秒后
我有以下代码来测试 Selenium WebDriver。 import org.openqa.selenium.WebDriver; import org.openqa.selenium.firef
我正在使用 Selenium 2.35 并在尝试单击 firefox 中的元素时出现不可预知的错误,如下所示: new Actions(driver).moveToElement(element).c
我将 Selenium 与 FirefoxDriver 一起使用,当它实例化时,FireFox 浏览器自动打开,我们如何隐藏它? WebDriver 驱动程序 = new FirefoxDriver(
我正在使用 python 3.5 编写示例 selenium 代码以打开链接 https://www.python.org/当我执行 py 时它显示以下错误..但是 FirefoxDriver.exe
我正在 gwt 上测试繁重的 Web 应用程序。测试在每次启动时创建新的 webdriver 实例,打开浏览器并加载页面。 一段时间后,测试通过。测试后我没有关闭浏览器,但是当我重新运行测试时,它会再
我尝试开始使用 selenium(今天下载了当前版本)并复制了他们打开浏览器并执行 google 搜索的示例。 但是,程序在第一行永远挂起WebDriver driver = new FirefoxD
我是一名优秀的程序员,十分优秀!