我現在面臨的問題,讓每方法老虎鉗System.getProperty("name")
值嘲諷System.class
實例後:模擬System.class在JUnit
@Test
public void Test1()throws Exception {
PowerMockito.mockStatic(System.class);
// Configuration
when(System.getProperty("os.name")).thenReturn("Win");
}
@Test
public void Test2() throws Exception {
PowerMockito.mockStatic(System.class);
when(System.getProperty("os.name")).thenReturn("Linux");
}
我們有兩個測試方法,當我們運行上面提到的兩個方法獨立,那麼我們得到正確的值System.getProperty("os.name")
。但是當我們正在運行類(將在類中執行這兩種方法),那麼我們在第二種方法中獲得第一個方法的System.getProperty("os.name")
值。 請建議。
提前致謝。
你可以添加整個班級代碼嗎? – developer
我無法複製,請提供整個測試類 –
如果您想測試系統屬性,您應該將'System'套裝在橋中。想想像[系統規則](http://stefanbirkner.github.io/system-rules/)。 –