Cobertura: Wie werden Spring-Daten behandelt? @Repository-Schnittstellen

In Bezug auf folgende Informationen:

https: //stackoverflow.com/a/14601831/70424

Cobertura instrumentiert keine Schnittstellen

Ich möchte wissen, wie man Quelldaten-Interfaces zu Coverage-Ergebnissen hinzufügt, da@Repository Implementierungsklassen werden nur zur Laufzeit von Spring deklariert und instanziiert.

Folgende Schnittstelle berücksichtigen:

// src/main/java/my/package/MyObjectRepository.java

@Repository
public interface MyObjectRepository  {
    MyObject findMyObjectByCodeAndName(String code, String name);
}

und folgender Test:

// src/test/java/my/package/MyObjectRepositoryTest.java

// @RunWith(SpringJUnit4ClassRunner.class) + Spring configuration
public class MyObjectRepositoryTest {

    @Autowired
    private MyObjectRepository myObjectRepository;

    @Test
    public void myTest() {
        myObjectRepository.findMyObjectByCodeAndName("foo","bar");  
    }
}

Ich habe nichts dagegen, zu Jacoco zu wechseln, aber ich habe gelesen, dass es auch keine Schnittstellen instrumentiert.

Wie können folgende Fälle abgedeckt werden? Das gleiche Problem / die gleiche Frage tritt bei Mybatis Mapper auf, die als Interfaces deklariert sind, aber keine konkrete Java-Klassendeklaration, die sie implementiert, vom Entwickler, sondern vom Framework zur Laufzeit geschrieben wird.

Ich habe ein @ geöffnFahrkart aber ich warte immer noch auf eine Antwort.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage