0
我目前正在學習grails,並在測試中通過the guide工作。瞭解Grails測試中的metaClass
有提供一個例子,其覆蓋在一個虛構的BookController
寫這段代碼測試:
def show = {
[ book : Book.get(params.id) ]
}
導向提出了嘲笑出params.id
結果以下方法:
void testA() {
BookController.metaClass.getParams = {-> [id:10] }
}
由於這是對BookController
的靜態定義的更改,它是否在測試之間持續存在,或者Grails魔術是否會自動清除tearDown方法?
也就是說,如果我是寫一個後續的測試跳過metaClass.getParams
設置和testA
後跑,會params.id
還是回到10
?
如果是這樣,在測試拆卸中清理的標準grails實踐是什麼?它似乎沒有在我正在閱讀的指南中介紹。