我正在尝试Geb(0.5.1)Grails(1.3.5)集成。使用JUnit运行器(扩展grails.plugin.geb.GebTests)时,在执行Geb测试之前不会启动Web应用程序。因此,测试失败,Firefox表示无法在localhost:8090建立与服务器的连接。

在同一个测试应用程序中运行功能性的硒测试(selenium-rc 1.0.2插件)不会出现问题。

有谁知道为什么grails Web应用程序没有在Geb功能测试之前启动,而在Selenium功能测试中正确启动了呢?

import geb.*

class GebTests extends grails.plugin.geb.GebTests {

    void testIndexSearch() {
        Browser.drive("http://localhost:8090/agora") {
            go('/admin')
            assert title == 'the title'
        }
    }

}

最佳答案

不需要Browser.drive()。您是否尝试过以下方法?

import geb.*

class GebTests extends grails.plugin.geb.GebTests {
    void testIndexSearch() {
        go('/admin')
        assert title == 'the title'
    }
}

要设置除Grails应用程序根目录以外的基本URL,请添加:
String getBaseUrl() { "http://some/url" }

关于grails - Grails中的Geb功能测试失败,因为尚未启动Web应用程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4423208/

10-11 20:19