Mock Static Function dengan PowerMockito
PowerMockito adalah satu library yang sangat membantu semasa kita menulis unit test untuk kod yang menggunakan function static yang menyukarkan kita untuk menggunakan mock.
Ini adalah beberapa kes yang telah Tedi gunakan semasa menyiapkan kerja sekolah.
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly()
Mula-mula set @RunWith dan @PrepareForTest
@RunWith(PowerMockRunner.class)
@PrepareForTest({TransactionAspectSupport.class})
Kemudian set apa behaviour kita nak:
@Before
public void setUp() throws Exception {
MockitoAnnotations.initMocks(this);
PowerMockito.mockStatic(TransactionAspectSupport.class);
TransactionStatus transactionStatus = PowerMockito.mock(TransactionStatus.class);
PowerMockito.when(TransactionAspectSupport.currentTransactionStatus()).thenReturn(transactionStatus);
PowerMockito.doNothing().when(transactionStatus).setRollbackOnly();
}
20200113
Ulasan