3
コントローラindex
(grails generate-all
コマンドで生成)のコントローラをテストする必要があります。私は(スポックで)このようなテストを持っている:Spockでコントローラをテストする
package mnm.schedule
import grails.test.mixin.*
import org.junit.*
import grails.plugin.spock.*
import spock.lang.Specification
import org.example.*;
class UserControllerSpec extends ControllerSpec {
def "test"() {
setup:
mockLogging(UserController, true)
when:
controller.index()
then:
redirectArgs.action == "list"
}
}
私はこのようなエラーが出る:いつか私は、テストを実行することができた後
Error Error running script test-app :spock : cannot find shared instance field (Use --stacktrace to see the full trace)
を、テストに合格してきています。
実際に間違っていますか?最初にエラーが表示されるのはなぜですか?私はSpock環境が初めてです。
ありがとうございます。
エラーのアドバイスを受けて、--stacktraceオプションを付けてテストを実行します。それは私たちのクリスタルボールがもたらすより多くの情報をあなたに与えるでしょう。 – Gregg
どのバージョンのGrailsをターゲットにしていますか? 2.x.xの場合は、@ TestFor(UserController)クラスレベルの注釈を使用してみてください。 – Esteban
@Esteban:正しいです。出来た。なぜあなたは答えとしてそれを置くことができないのですか? –