[英]Mocking parameter of a void method
假設我有以下設置器:
public void setNewPath(final String path) {
if (StringUtils.hasText(path) && !path.endsWith(File.separator)) {
this.newPath = path + File.separator;
} else {
this.newPath = path;
}
}
我想在測試方法中模擬參數path
。 那可能嗎?
這不是嘲笑的好問題。 鑒於字符串是不可變的,在任何情況下都不會在適當的地方修改參數,盡管模擬可以告訴您是否調用了方法,但它不會讓您跟蹤要進行的修改的值。
正如Brian Agnew在評論中發布的那樣,“使用各種輸入來測試方法,並斷言某些行為(例如newPath的設置)”。 確保newPath
具有吸氣劑,即使該吸氣劑僅用於測試(並已記錄在文檔中)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.