Я новичок в SonarQube, и мне нужно проанализировать мой код Java Spring MVC с его помощью.Я добавляю один юнит-тест, но анализ SonarQube не фиксирует добавленный юнит-тест.Ниже приведена строка кода для тестирования.
@Autowired
private InvoiceRepository repository;
public Invoice create(Invoice entity){
entity.setInvoiceId(UUID.randomUUID().toString());
return repository.insert(entity);
}
Ниже приведен модульный тест, который я написал с помощью Junit.
ObjectMapper mapper = new ObjectMapper();
Invoice obj = mapper.readValue(invoiceJson, Invoice.class);
InvoiceRepository dataServiceMock = mock(InvoiceRepository.class);
when(dataServiceMock.insert(invTest1)).thenReturn(new Invoice("ABC", "1", "INV-1", today, "FLTR-123", "Test Service Provider", null, "Cus Mane", "077777777", "06555555",
null, null, true, null, null, "BC", null, "43", true, null, null));
InvoiceService service = new InvoiceService();
Invoice invTemp = service.create(obj);
assertEquals(invTest1.getInvoiceId(), invTemp.getInvoiceId());
Я также обновил файл pom.xml
соответствующими пакетами (org.springframework.boot
и org.jacoco
)
Отчет SonarQube показывает следующую ошибку.
Красная линия в аналитическом отчете показывает «Не охвачено тестами».
Было бы здорово, если кто-то может помочьмне исправить эту проблему.
Я выполнил анализ с использованием командной строки, используя
mvn sonar:sonar -Dsonar.host.url=http://localhost:9000