Как мы должны сочетать критерии покрытия? - PullRequest
0 голосов
/ 08 июня 2018

Я читал о критериях покрытия.В этой статье Насколько эффективны критерии покрытия кода?

Я прочитал, что комбинация оператора, ветви, MC / DC и покрытия цикла дает лучший результат, чем использование любого из них в качестве одногокритерии (объединение нескольких покрытий потока управления лучше, чем самый сильный критерий).

Я не знаю, как они их объединяют.Кто-нибудь знает, как мы должны объединить, например, два критерия покрытия?Я где-то читал, что они используют результат критериев покрытия, чтобы использовать его в других критериях покрытия.но я не могу найти источник, поэтому я не уверен, правда это или нет?а также означает ли это сочетание критериев покрытия или нет?

1 Ответ

0 голосов
/ 04 мая 2019

Существует множество определений метрик покрытия структурного кода.И чтобы ответить на вопрос: если один метод включает другой, нет необходимости использовать менее мощный метод покрытия.Это означает, что нет необходимости объединять их все.

Например, пожалуйста, проверьте связанный документ НАСА:

MCDC

Он содержитобзор некоторых методов, относящихся к другим.

См., например, одну таблицу из приведенного выше документа:

Coverage Criterion

Авторское право: NASA

Нет необходимости выполнять проверку покрытия решений, если вы уже делаете MCDC.Это отличается от дополнительных мер, таких как покрытие функции или покрытие цикла.Трудно сказать, принесут ли они вам дополнительную пользу.Очевидно, что упомянутое вами исследование указывает на то, что

Что вам необходимо понять, так это то, что вам не следует проводить «структурное тестирование».Вам следует провести тест на основе требований (или использовать другие методы), а затем измерить определенное определенное покрытие.В вашей стратегии тестирования вам необходимо определить, какие измерения покрытия следует проводить и какой процент покрытия должен быть достигнут.Если ожидаемый охват не достигнут, вам нужно добавить больше тестовых случаев.

Если вы просите рекомендации относительно того, что использовать, вы должны следовать очень строгим требованиям, установленным FAA и в ISO26262.Они рекомендуются для MCDC высочайшего класса безопасности (например, ASIL D).Придерживаясь этого строгого требования, вы, возможно, можете забыть о других методах.

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

Если вы заинтересованыв MCDC вы можете посмотреть MCDC

...