私はGrails Spring Security Pluginをプロジェクト用に使用しています。これで自分のコードをユニットテストしたいと思っています。私は自分のコントローラに次のコードを持っている:Grails Spring Security Testing
void testIndex() {
controller.index()
assert "/user/list" == response.redirectedUrl
}
このテストは失敗します:
| Running 8 unit tests... 1 of 8
| Failure: testIndex(xxx.UserControllerTests)
| java.lang.NullPointerException: Cannot get property 'currentUser' on null object
at xxx.UserController.index(UserController.groovy:12)
at xxx.UserControllerTests.testIndex(UserControllerTests.groovy:19)
どのように私は春のセキュリティユーザを認証することができます
def index() {
redirect action: 'show', params: [id: springSecurityService.currentUser.id]
}
私のテストクラスには、次のコードを持っていますテストケースで?単体テストはどうやって書くのですか?
: クラスUserControllerで{ \t \t springSecurityService デフ... – Nadya
私はControllerTestのそれを書き留めべきでしょうか? – Nadya
@ user1726376いいえ、ControllerTestには必要ありません。私はあなたが 'springSecurityService'への参照を持っていることを確認していました。なぜなら、エラーメッセージ"ヌルオブジェクトでcurrentUserプロパティを取得できません "という事実があったからです。 –