[英]Integration testing grails spring security plugin?
我有這個:
@Secured(['ROLE_USER', 'ROLE_HELPDESK', 'ROLE_ADMIN'])
class MyController {
def edit = {
}
@Secured(['ROLE_ADMIN'])
def uploadForUser = {
params.userId = params.id
forward(controller: 'someController', action: 'someAction', params: params)
}
}
我認為應該失敗的集成測試:
public void test_uploadForUser_unauthenticated(){
myController.params.id = "testUser"
myController.uploadForUser()
}
然而測試通過了。 有沒有辦法測試用spring security插件注釋的控制器?
SpringSecurityFilter
會分析這些注釋,因此如果您沒有執行實際的HTTP請求,它們將無法工作。
因此,您需要切換到通過操作中的條件檢查角色,比如在此處完成,或者使用WebDriver / Geb或一些更簡單的框架進行測試 - Grails Security Plugin本身提供了非常好的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.