Sonarqube Частично покрытые тесты - PullRequest
0 голосов
/ 07 октября 2019

В отчете о тестировании Sonarqube говорится, что мои заявления на c ++ покрыты только частично. Пример очень упрощенной функции, содержащей такие операторы, приведен ниже:

std::string test(int num) {
    return "abc";
}

Мой тест выглядит следующим образом:

TEST(TestFunc, Equal) {
    std::string res = test(0);
    EXPECT_EQ (res, "abc");
}

В отчете об охвате Sonarqube говорится, что возвращаемый stmt только частично покрывается тестами(1 из 2 условий). Мне интересно, какое еще условие мне нужно проверить?

В отчете я также увидел следующее:

Condition to cover: 2
Uncovered Condition: 1
Condition Coverage: 50%

Кажется, мне нужен тест, чтобы охватить другое условиено я не могу понять, что это такое.

1 Ответ

0 голосов
/ 08 октября 2019

После дополнительных исследований это не проблема Sonarqube. Эта запись (и способ ее устранения), скорее всего, объясняет основную причину моей проблемы.

Связанный пост: Покрытие веток LCOV / GCOV с ветвями, генерирующими C ++ повсюду.

...