使用 groovy 中的其他测试与 geb 和 spock 创建一个新测试
Create a new test using other test in groovy with geb and spock
我在我的网页上创建了一个购票测试BuyTicketSpec.groovy。
class BuyTicketsSpec extends GebReportingSpec {
def (String country, String userType, String type, String payment, String env) {
}
}
我创建了其他测试来修改 ModifyTicketSpec 或删除工单 DeleteTicketSpec。
我可以创建一个 geb 测试来将这个测试合二为一吗?例如 FullCycleTicket.groovy 测试我尝试购买、修改和删除机票的位置。
class FullCycleTicketsSpec extends GebReportingSpec {
def (String country, String userType, String type, String payment, String env) {
setup:
//initialize
when:
//launch BuyTicketSpec
//launch ModifyTicketSpec
//launch DeleteTicketSpec
then:
//
where:
}
}
是否可以使用 geb 和 spock 框架?
感谢您的帮助。提前谢谢你。
您没有理由不能对一系列 when: / then: 对进行排序,以在您的流程中一直进行测试。我不相信你可以直接调用其他规范。
setup:
// initialize
when:
// buy ticket spec when code
then:
// buy ticket spec then code
when:
// modify ticket spec when code
then:
// etc...
从您的规格(FullCycleSpec
和 "partial" 规格(如 BuyTicketSpec
).
我不会尝试重用规范,因为规范有一个生命周期,而且是执行它们的测试框架。这就是为什么你最好在非规范中使用通用代码 class.
正如 erdi 所说,在重用公共代码时,特征非常有用。
简单示例:
class TestBasicStuff extends GebReportingSpec implements StuffMeister {
def 'do some basic stuff'() {
someBasicStuff()
}
}
class TestNotOnlyBasicStuff extends GebReportingSpec implements StuffMeister {
def 'do not only basic stuff'() {
someBasicStuff()
someAdvancedStuff()
}
}
trait StuffMeister {
def someBasicStuff() { 'basic' }
def someAdvancedStuff() { 'not basic' }
}
我在我的网页上创建了一个购票测试BuyTicketSpec.groovy。
class BuyTicketsSpec extends GebReportingSpec {
def (String country, String userType, String type, String payment, String env) {
}
}
我创建了其他测试来修改 ModifyTicketSpec 或删除工单 DeleteTicketSpec。
我可以创建一个 geb 测试来将这个测试合二为一吗?例如 FullCycleTicket.groovy 测试我尝试购买、修改和删除机票的位置。
class FullCycleTicketsSpec extends GebReportingSpec {
def (String country, String userType, String type, String payment, String env) {
setup:
//initialize
when:
//launch BuyTicketSpec
//launch ModifyTicketSpec
//launch DeleteTicketSpec
then:
//
where:
}
}
是否可以使用 geb 和 spock 框架?
感谢您的帮助。提前谢谢你。
您没有理由不能对一系列 when: / then: 对进行排序,以在您的流程中一直进行测试。我不相信你可以直接调用其他规范。
setup:
// initialize
when:
// buy ticket spec when code
then:
// buy ticket spec then code
when:
// modify ticket spec when code
then:
// etc...
从您的规格(FullCycleSpec
和 "partial" 规格(如 BuyTicketSpec
).
我不会尝试重用规范,因为规范有一个生命周期,而且是执行它们的测试框架。这就是为什么你最好在非规范中使用通用代码 class.
正如 erdi 所说,在重用公共代码时,特征非常有用。
简单示例:
class TestBasicStuff extends GebReportingSpec implements StuffMeister {
def 'do some basic stuff'() {
someBasicStuff()
}
}
class TestNotOnlyBasicStuff extends GebReportingSpec implements StuffMeister {
def 'do not only basic stuff'() {
someBasicStuff()
someAdvancedStuff()
}
}
trait StuffMeister {
def someBasicStuff() { 'basic' }
def someAdvancedStuff() { 'not basic' }
}