Spock と Geb は初めてで、Grails 1.3.7 アプリケーションで使用しています。LoginSpec と LoginPage が機能しています。今私がやりたいことは、いくつかの異なるユーザー名/パスワードの組み合わせを指定して、LoginSpec を何度も実行することです。これにどのようにアプローチすればよいかわかりません。
class LoginSpec extends geb.spock.GebReportingSpec {
def "At the login page"() {
when: "we visit the login page"
to LoginPage
then:
at LoginPage
}
def "failed login"() {
when: "a user goes to the login page and enters invalid data"
to LoginPage
loginForm.j_username = "bad@test.com"
loginForm.j_password = "password"
loginButton.click()
then:
at LoginPage
}
def "successful login"() {
when: "a user goes to the login page and enters valid data"
to LoginPage
loginForm.j_username = "good@test.com"
loginForm.j_password = "password"
loginButton.click()
then:
at DashboardPage
}
}
class LoginPage extends Page {
static url = "login/auth"
static at = { heading == "sign in" }
static content = {
heading { $(".page-header>h2").text() }
loginButton(to: [DashboardPage, LoginPage]) { $('#sign_in').find("button.primary") }
loginForm { $('#loginForm') }
}
}