1
我有檢查的條件,並根據條件的結果的控制器動作,將一個字段設置爲會話變量在控制器斷言會話變量集 - Grails的測試用例
控制器:
def checkUser={
if(condition: true){
session.user = id
}else{
session.user=null
}
}
現在,在我的測試用例中,如果我必須斷言此會話的用戶值,我該如何做?
我試了一下這樣的,但它沒有工作:
void testSomething(){
controller.checkUser()
assertNull(session.user)
}
如何斷言這是在控制器被設置會話變量任何想法?
斷言在默認情況下在Java中沒有啓用。您需要使用-ea(或)-enableassertion參數明確啓用它們。 – kosa 2012-07-30 21:19:11
我沒有嘗試過這個,但是當訪問params時,我知道你可以做controller.params。如果你做assertNull(controller.session.user),會發生什麼? – Gregg 2012-07-30 23:44:06
conroller.session.user不起作用。它拋出異常 – Npa 2012-07-31 13:42:10