Может ли полностью покрытый код иметь рейтинг покрытия EclEmma менее 100%?

Я только что написал простой пример кода, чтобы убедиться, что EclEmma установлена ​​правильно. Я не получаю 100% покрытия, и я не понимаю, почему. Подсветка подразумевает, что это связано с именем класса. Вот мой код с соответствующими тестами JUnit, как его выделил EclEmma:

Arithmetic class

Tests for Arithmetic class

Результаты покрытия показывают, что три инструкции в Arithmeticне выполняются, хотя оба фактических метода кажутся полностью покрытыми:

Coverage information

Я читал документацию EclEmma о базовом покрытии блоков, но я все еще в замешательстве. Я не уверен, какие основные блоки пропущены. Сначала я подумал, что EclEmma может просто игнорировать байт-код для классов, но ArithmeticTest, похоже, обрабатывается очень хорошо.

У меня есть два тесно связанных вопроса:

  1. Указывает ли это на проблему, связанную с тем, как я установил/настроил EclEmma?
  2. Является ли нормальным/приемлемым, чтобы полностью покрываемый код имел высокий, но не совсем 100% рейтинг покрытия EMMA, и если да, то как это работает?

5
задан Pops 8 June 2012 в 15:27
поделиться