Ciò ha funzionato nella maggior parte dei casi nel mio progetto:
@Rule
public PowerMockRule rule = new PowerMockRule();
static {
PowerMockAgent.initializeIfNeeded();
}
Rimuovere/Commenta @RunWith(PowerMockRunner.class)
& comprendono seguente importazioni dopo l'aggiunta powermock-module-javaagent-1.6.5.jar
nel classpath:
import org.junit.Rule;
import org.powermock.modules.junit4.rule.PowerMockRule;
import org.powermock.modules.agent.PowerMockAgent;
Ora click destro-> Copertura As- > Configurazioni di copertura e aggiungi righe seguenti in Argomenti:
-ea -noverify -javaagent:path/to/powermock-module-javaagent-1.6.5.jar
Fare clic su Applica-> Copertura.
Si noti inoltre che @Before
non avrebbe funzionato in questo caso quindi bisogna aggiungere tutte le stoffe nei metodi contrassegnati con @Test
dal metodo contrassegnati con @Before
.
fonte
2016-06-15 07:29:46
Basta essere consapevoli dei limiti di eCobertura anche prima di cambiare: https://bitbucket.org/jmhofer/ecobertura/issues?status = nuovo e stato = aperto – KrishPrabakar
i plug-in eCobertura sembrano non essere più mantenuti –
Per risolvere il problema, ho finito per suddividere tutti i test che utilizzano un 'PowerMocikito.staticMock' in file di classe separati in modo che il problema di copertura non sia così diffuso a tutti i miei test. – madlymad