В настоящее время пытается получить JSCover для исключения js-файлов, которые используются в качестве библиотек. У меня есть набор муравьиных сценариев, ниже которого будетJSCover - Исключая файлы покрытия
- запуска сервера JSCover
- Run & Сформировать отчет Json
- Остановите сервер
Наконец, у меня есть команда оболочки для преобразования Json файл для LCov, чтобы я мог использовать его с sonarqube. Я также получаю покрытие в jscoverage.html, но он включает в себя каждый файл под web/который я не хочу. Изображение ниже
Ant скрипты ниже:
<target name="jstest-start">
<java jar=".../JSCover.jar" fork="true" spawn="true">
<arg value="-ws"/>
<arg value="--report-dir=coverage"/>
<arg value="--document-root=web"/>
<arg value="--port=8082"/>
<!-- Aim is to exclude folder js under web/ as it contains libraries, not source code. Currently does not work -->
<arg value="--no-instrument=web/js/"/>
<arg value="--no-instrument=js/"/>
</java>
<waitfor maxwait="5" maxwaitunit="second" checkevery="250" checkeveryunit="millisecond" timeoutproperty="failed">
<http url="http://localhost:8082/jscoverage.html"/>
</waitfor>
<fail if="failed"/>
</target>
<target name="jstest-run">
<exec dir="/usr/local/CI/phantomjs/bin/" executable="phantomjs" failonerror="true">
<arg line=".../run-jscover-qunit.js http://localhost:8082/index.html"/>
</exec>
</target>
<target name="jstest-stop">
<get src="http://localhost:8082/stop" dest="stop.txt" />
</target>
<target name="jstest" description="Run javascript tests">
<antcall target="jstest-start"/>
<antcall target="jstest-run"/>
<antcall target="jstest-stop"/>
</target>
Моя структура папок:
И, наконец, мои настройки анализа гидролокатора автономные:
Итак, похоже, что JSCover рекурсивно читает для всех js-файлов, и я не могу предотвратить это от сонара или муравья.
Может ли кто-нибудь пролить свет?
Спасибо за ваш ответ. Я пробовал буквально каждую комбинацию, которую я мог себе представить, включая ваше первое предложение, которое должно работать, но это не так. Я гарантировал, что папка покрытия воссоздана при каждой сборке, но JSCover по-прежнему включает в себя каждый файл js во всех подпапках под веб-папкой –