GebConfig.groovy和Groovy ConfigSlurper的Geb配置问题

时间:2012-10-17 20:57:14

标签: java testing groovy geb

我正在尝试启动和运行基于Groovy的浏览器自动化/测试框架,并且我在使基于ConfigSlurper的配置工作时遇到问题。

我的默认包中有一个GebConfig.groovy类,如下所示:

import org.openqa.selenium.firefox.FirefoxDriver

// default is to use firefox
driver = { new FirefoxDriver() }

//set the report output directory
reportsDir = "reports/"

但是尝试运行脚本会导致以下错误:

Caused by: groovy.lang.MissingMethodException: No signature of method: groovy.util.ConfigSlurper.parse() is applicable for argument types: (script135050580006143429828, java.net.URL) values: [script135050580006143429828@21f11507, file:/Users/alex/Documents/workspace/gebTest/src/main/java/GebConfig.groovy]
Possible solutions: parse(java.net.URL), parse(groovy.lang.Script, java.net.URL), parse(groovy.lang.Script), parse(java.lang.Class), parse(java.lang.String), parse(java.util.Properties)
    at geb.ConfigurationLoader.loadRawConfig(ConfigurationLoader.groovy:295)

我认为我需要遗漏一些小而明显的东西。我在Eclipse中使用最新版本的Geb(0.7.2)和Groovy 1.8。

1 个答案:

答案 0 :(得分:1)

正如我从您的异常和脚本路径中看到的那样,您似乎正在使用Maven或Gradle来构建项目。要解决您的问题,您应该尝试将GebConfig.groovy脚本从文件夹src/main/java移至src/main/resources或更好src/test/resources,因为您可能不希望在生产环境中使用此脚本。

有关详细信息,请参阅Configuration chapter in The Book of Geb