3

私はテストを行ってgebいますが、問題があります。現在のページのアドレスを保存/印刷する必要があります(関数SaveUrl())。

スポック テスト:

class TestSpec extends GebReportingSpec {
def "Google"() {
    given: "go to google.com"
    to GooglePage

    when: "we at Google home page"
    at GooglePage

    then: "Search Yahoo"
    Search("Yahoo")
    SaveUrl()
    }
}

Google ページ:

class GooglePage extends Page {
    static url = "http://www.google.by"
    static at = { $("title").text() == "Google"}
    static content = {
        theModule { module SearchModule }
    }

def Search(String arg0) {
    theModule.field.value(arg0)
    theModule.search.click()
    }

def SaveUrl() {
    // need implement
    }
}

モディール:

class SearchModule extends Module {
static content = {
    field { $("input", name: "q") }
    search { $("input", name: "btnK") }
    }
}

現在の URL の保存/印刷にご協力ください。
ありがとう!

4

1 に答える 1

11

WebDriver クラスで現在の URL ゲッターを使用できます。WebDriver インスタンスはdriverBrowser のプロパティとして保存されます。したがって、Geb Spock テストでは、次のように簡単に言えます。

driver.currentUrl

編集

Geb 0.9.3 以降では、最新の URL ゲッターも利用できますBrowser

于 2013-04-27T10:40:03.893 に答える