Я только что написал простой пример кода, чтобы убедиться, что EclEmma установлена правильно. Я не получаю 100% покрытия, и я не понимаю, почему. Подсветка подразумевает, что это связано с именем класса. Вот мой код с соответствующими тестами JUnit, как его выделила ЭклЭмма:
Результаты покрытия показывают, что три инструкции в Arithmetic
не выполняются, хотя оба фактических метода кажутся полностью покрытыми:
Я прочитал документацию EclEmma о базовом покрытии блоков, но я все еще смущен. Я не уверен, какие основные блоки пропущены. Сначала я подумал, что EclEmma может просто игнорировать байт-код для классов, но ArithmeticTest
, похоже, обрабатывается просто отлично.
У меня есть два тесно связанных вопроса:
- Указывает ли это на проблему с тем, как я установил/настроил EclEmma?
- Является ли нормальным/приемлемым, чтобы полностью покрываемый код имел высокий, но не совсем 100% рейтинг покрытия EMMA, и если да, то как это работает?