5
'u kullanamıyorum Yardım isterim çünkü bu hata ile ne yapacağımı bilmiyorum ... Öncelikle elde ettiğim stacktrace'i göstereyim Gerçekten basit testimi çalıştırırken, garip olan şey benim testimin idam edilmemesi ...? Burada harika dosyalarıBasit bir Grails işlevsel testini kullanarak, Geb ve spock
Configuring Spring Security Core ...
... finished configuring Spring Security Core
| Server running. Browse to http://localhost:8080/
| Running 3 functional tests... 1 of 0
| Failure: initializationError(SecondaryTest)
| java.lang.Exception: No runnable methods
at org.junit.runners.BlockJUnit4ClassRunner.validateInstanceMethods(BlockJUnit4ClassRunner.java:166)
at org.junit.runners.BlockJUnit4ClassRunner.collectInitializationErrors(BlockJUnit4ClassRunner.java:102)
at org.junit.runners.ParentRunner.validate(ParentRunner.java:344)
at org.junit.runners.ParentRunner.<init>(ParentRunner.java:74)
at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:55)
| Running 3 functional tests... 2 of 0
| Failure: initializationError(SecondaryTest)
| java.lang.Exception: The @Rule '_gebReportingSpecTestName' must be public.
at org.junit.internal.runners.rules.RuleFieldValidator.addError(RuleFieldValidator.java:90)
at org.junit.internal.runners.rules.RuleFieldValidator.validatePublic(RuleFieldValidator.java:67)
at org.junit.internal.runners.rules.RuleFieldValidator.validateField(RuleFieldValidator.java:55)
at org.junit.internal.runners.rules.RuleFieldValidator.validate(RuleFieldValidator.java:50)
at org.junit.runners.BlockJUnit4ClassRunner.validateFields(BlockJUnit4ClassRunner.java:170)
at org.junit.runners.BlockJUnit4ClassRunner.collectInitializationErrors(BlockJUnit4ClassRunner.java:103)
at org.junit.runners.ParentRunner.validate(ParentRunner.java:344)
at org.junit.runners.ParentRunner.<init>(ParentRunner.java:74)
at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:55)
| Running 3 functional tests... 3 of 0
| Failure: initializationError(SecondaryTest)
| java.lang.Exception: The @Rule '_gebReportingSpecTestName' must implement MethodRule or TestRule.
at org.junit.internal.runners.rules.RuleFieldValidator.addError(RuleFieldValidator.java:90)
at org.junit.internal.runners.rules.RuleFieldValidator.validateTestRuleOrMethodRule(RuleFieldValidator.java:73)
at org.junit.internal.runners.rules.RuleFieldValidator.validateField(RuleFieldValidator.java:56)
at org.junit.internal.runners.rules.RuleFieldValidator.validate(RuleFieldValidator.java:50)
at org.junit.runners.BlockJUnit4ClassRunner.validateFields(BlockJUnit4ClassRunner.java:170)
at org.junit.runners.BlockJUnit4ClassRunner.collectInitializationErrors(BlockJUnit4ClassRunner.java:103)
at org.junit.runners.ParentRunner.validate(ParentRunner.java:344)
at org.junit.runners.ParentRunner.<init>(ParentRunner.java:74)
at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:55)
| Completed 3 functional tests, 3 failed in 40ms
| Server stopped
| Tests FAILED - view reports in target/test-reports
Ve Grails 2.0 kullanıyorum:
SecondaryTest.groovy:
import pages.SignInPage
import geb.spock.GebReportingSpec
class SecondaryTest extends GebReportingSpec {
String getBaseUrl() { "http://localhost:8080/" }
File getReportDir() { new File("target/reports/geb") }
def "I am at siginin page"() {
when:
to SignInPage
then:
true
}
}
SignInPage.groovy:
package pages
import geb.Page
class SignInPage extends Page {
static url = "login/auth"
static at = { title == "Sign in" }
static content = {
}
}
sayesinde
evet! Teşekkürler !! çözüm çok açık olduğunu göremedim :-) –
Bu, önceki tüm birim testlerimin bir şeylere yeniden adlandırılması gerektiği anlamına mı geliyor? – raffian
"Önceki birim testlerim" ile ne kastettiğinizden emin değil misiniz? * Spock test sınıfları * 'Spec' ile bitmelidir. Bu sorunun Grails'e özgü olduğunu unutmayın. –