0

我正在尝试启动并运行基于 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。

4

1 回答 1

1

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

有关详细信息,请参阅The Book of Geb 中的配置章节

于 2012-10-19T13:17:41.380 回答