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