私は私が働いているWebページ上の各要素のために定義されたコンテンツを持つモジュールを持っている:各要素を個別にアサートすることなく、一度にSpockを使用してGebモジュールのコンテンツ全体を確認するにはどうすればよいですか?
私は私のモジュールに含まれる各要素が存在するが、唯一の方法は、私が知っていると主張しています私のテスト仕様でpackage com.gdit.qa.fwa.geb.cmdr.modules
import geb.Module
class Member extends Module {
static content = {
// Member fields
mbrID {$("div.subject-details div.memberDetails input.projMbrId")}
mbrName {$("input.projMbrName")}
mbrRegion {$("select.projMbrReg")}
mbrAdd1 {$("input.projMbrAdd1")}
mbrAdd2 {$("input.projMbrAdd2")}
mbrAdd3 {$("input.projMbrAdd3")}
mbrCity {$("input.projMbrCity")}
mbrState {$("select.projMbrState")}
mbrZip {$("input.projMbrZip")}
mbrHomePhone {$("input.projMbrHomePhone")}
mbrHomePhoneExt {$("input.projMbrHomePhoneExt")}
mbrWrkPhone {$("input.projMbrWorkPhone")}
mbrWrkPhoneExt {$("input.projMbrWorkPhoneExt")}
mbrEmail {$("input.projMbrPersonalEMail")}
mbrWrkEmail {$("input.projMbrWorkEMail")}
}
}
一度そうでモジュールの全体の内容をする私のために方法がある場合、私は疑問に思って
package cmdr.ProjectCover
import com.gdit.qa.fwa.geb.cmdr.pages.HomePage
import com.gdit.qa.fwa.geb.cmdr.pages.ProjectCover
import geb.spock.GebReportingSpec
class VerifyMemberFields extends GebReportingSpec {
def setupSpec() {
// Log in to app
via HomePage
loginPage.signIn("marco", "abc123")
// Navigate to Member Page
memberPageButton.click()
}
def "Verify Member fields exist"() {
when: "User selects Member option for subject type"
at ProjectCover
projSubject.click()
projCoverMbrFields.projSubjectMbrOption.click()
then: "All expected member fields are displayed in the left panel"
assert projCoverMbrFields.mbrID.present
assert projCoverMbrFields.mbrName.present
assert projCoverMbrFields.mbrRegion.present
assert projCoverMbrFields.mbrAdd1.present
assert projCoverMbrFields.mbrAdd2.present
assert projCoverMbrFields.mbrAdd3.present
assert projCoverMbrFields.mbrCity.present
assert projCoverMbrFields.mbrState.present
assert projCoverMbrFields.mbrZip.present
assert projCoverMbrFields.mbrHomePhone.present
assert projCoverMbrFields.mbrHomePhoneExt.present
assert projCoverMbrFields.mbrWrkPhone.present
assert projCoverMbrFields.mbrWrkPhoneExt.present
assert projCoverMbrFields.mbrEmail.present
assert projCoverMbrFields.mbrWrkEmail.present
}
を(代わりに、個別に私のモジュールの各要素を主張する)主張:行うにはどのようにそれは、個別に各要素をアサートすることによってです私のフィーチャーメソッドはブロック条件を減らすことができます。