Понижение vue-router до 3.0.1 решает проблему. Доказательство:
По существу все инструменты покрытия кода оснащают код для проверки, какие части кода выполнялись.
Как определено в ссылке Вы, если, C0 и C1 довольно подобны с точки зрения человека, пишущего инструментарий. Единственная разница - то, куда Вы помещаете код. Я пойду далее, чтобы размышлять, что C1 еще легче, чем C0, потому что инструментарий происходит на, скажем, уровень абстрактного синтаксиса, где концы строки не рассчитывают очень.
Другая причина я говорю, что C1 легче, состоит в том, потому что это имеет дело с синтаксическими единицами в противоположность лексическим объектам: как был бы Вы инструмент:
if
c > 1 && c
< 10
then
blabla
end
Ну, просто мысль.
Что касается C2, я никогда не видел сделанный на практике. Причина состоит в том, что можно получить экспоненциальный взрыв:
if c1 then * else * end
if c2 then * else * end
...
if cn then * else * end
Для n строк кода Вам было бы нужно 2^n тесты. Кроме того, что Вы делаете для циклов? Как правило, Вы абстрагируете их далеко как простых, если операторы (т.е. для каждого цикла, Вы тестируете то его тело, выполнялся 0 раз для одного теста и по крайней мере однажды в другом тесте).
Я полагаю, что выборка ПК является особенно ужасным способом сделать покрытие кода, потому что можно пропустить некоторые операторы, потому что они выполнились слишком быстро :D То же идет для нечеткой логики, которая используется для обоснования о приближениях; обычно Вы хотите свое покрытие кода к детерминированному b.
Карты Karnaugh используются для уменьшения булевых функций, и я не вижу полезной ссылки с инструментами покрытия кода.
Кроме того, Ваш вопрос не очень ясен время от времени: Вы хотите, чтобы методы достигли лучшего покрытия кода, или это - просто реализация инструментов покрытия кода, которая интересует Вас?
В.NET предпочтительный путь состоит в том, чтобы использовать.NET Профильный API, который в основном предлагает набор совместных точек в самом CLR.
Один метод, который работает практически со всеми языками, - это установка инструментов с использованием системы преобразования программ.
Технический документ можно найти здесь: http://www.semdesigns.com/Company/Publications/TestCoverage.pdf объясняет, как это можно сделать в целом.
Моя компания Semantic Designs предлагает большой набор инструментов для тестирования покрытия. которые обеспечивают так называемое покрытие C1 выше (например, "покрытие филиала") так что да, это обычно ), для разных языков (C, C ++, C #, Java, COBOL, PHP, все в нескольких диалекты). См. Www.semdesigns.com/Products/TestCoverage/index.html