Управление исходным кодом с интеграцией Visual Studio для маленького проекта

Отказ от ответственности: я не эксперт ни по Arquillian, ни по TomEE, поэтому вы можете подстроить ответ под свои цели.

В любом случае, в двух словах, байт-код инструментов JaCoCo для предоставления отчета о покрытии.

Поскольку при использовании Arquillian фактическое выполнение теста происходит в JVM TomEE, а не в JVM, которая фактически выполняет набор тестов (возможно, CI-сервер или просто скрипт сборки, выполняющий тест), поэтому настройте JaCoCo на этом тестовая машина не сделает много, вам придется настроить сам сервер.

JaCoCo имеет опцию -javaagent для этого, и этот Java-агент будет «перехватывать» загрузку классов сервером и обрабатывать их.

Теперь, когда JaCoCo работает, он создает файл jacoco.exec, который на самом деле содержит отчет о покрытии, который может быть показан позже различными способами (плагин jenkins для отображения покрытия, интеграция с гидролокатором, что угодно). И это, безусловно, наиболее часто используемая опция AFAIK, поэтому, если вы будете использовать этот подход, учитывая, что инструментарий действительно работает, после завершения тестов вам нужно будет найти сервер на тестовом компьютере и загрузить его на компьютер сборки. и интегрироваться с CI / Sonar как угодно.

Однако есть альтернативные решения:

Документация JaCoCo утверждает, что существует три режима запуска инструментирующего Java-агента:

  • Файловая система: At Данные выполнения завершения JVM записываются в локальный файл.
  • Сервер сокетов TCP: внешние инструменты могут подключаться к JVM и извлекать данные о выполнении через соединение через сокет. Возможен сброс данных выполнения и сброс данных выполнения при выходе из ВМ.
  • TCP Socket Client: при запуске агент JaCoCo подключается к определенной конечной точке TCP. Данные исполнения записываются в сокетное соединение по запросу. Возможен сброс данных выполнения и сброс данных выполнения при выходе из ВМ.

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

В любом случае, мы обсудили первый вариант, но вы также можете работать с конфигурациями TCP, если это необходимо. Конечно, здесь вам придется решать проблемы безопасности (например, разрешение на доступ / доступ к порту и т. Д.).

Если вы работаете в режиме TCP, есть Плагин Maven , который может пригодиться. Я не использовал его сам, просто погуглил, поэтому не могу комментировать, хорошо ли это, у него всего 2 звезды на Github, так что, вероятно, он не готов к производству, но, возможно, вы могли бы получить некоторые идеи из его исходного кода. [1116 ]

5
задан Joel Coehoorn 9 December 2011 в 19:01
поделиться

8 ответов

Я только что начал использовать Подверсию на самом деле, все, что я сделал было движение к их веб-сайту, и загрузите сервер (взял как 10 минут, чтобы установить и установить). Установщик спрашивает Вас, где Вы хотите, чтобы Ваш репозиторий кода был, и затем он настраивает сервер полностью. Единственная вещь, которую я должен был сделать, была помещена в файл паролей. Я установил ankhsvn (который является клиентом SVN, который интегрируется в Visual Studio), и это работало отлично без помехи. Точно, как Вы ожидали бы. Это - очень мало работы в целом.

5
ответ дан 13 December 2019 в 19:37
поделиться

50 Bucks получают Вас все управление подверсией, в котором Вы могли нуждаться.

Править: И в конечном счете... 50 маркеров так же хороши как свободные...

1
ответ дан 13 December 2019 в 19:37
поделиться

Я думаю, что у Вас есть две опции, действительно:

Подверсия. Легко установить и т.д., и освободить. Мне нравится VisualSVN, который составляет 50$, и ценность по крайней мере 5x так очень, но можно использовать Анк (свободный, OSS) или просто использовать tortose (плагин Windows Explorer, OSS, свободное).

После того как у Вас есть tortoseSVN (VisualSVN нужен он также), можно сделать локальный repo's или использовать удаленный, например, VisualSVNServer (также свободный), или лично, у меня есть шахта, размещенная с моими веб-сайтами в dreamhost :)

Другая опция является Хранилищем SourceGear. Замечательно, если у Вас есть сервер на базе Windows где-нибудь (это - SQL 200x + базирующийся ASP.NET, включая SQL Express Edition я думаю), и это свободно для одного пользователя. Очень хороший, если Вы привыкли к SourceSafe или TFS, и он может работать в фиксации слияния контроля SVN/CVS путь, если Вы хотите к (не значение по умолчанию, но легкий измениться), или просто используете выезд - блокировка - регистрируется в пути как VSS.

Вы, возможно, услышали Eric Sink из SourceGear на подкасте Переполнения стека другая неделя - та же компания.

2
ответ дан 13 December 2019 в 19:37
поделиться
2
ответ дан 13 December 2019 в 19:37
поделиться

Я нашел Подверсию очень легкой установить. AnkhSVN интегрирует в Visual Studio IDE приятно и удостоверяется, что Вы не забываете добавлять новые файлы, созданные в IDE к SVN. Однако AnkhSVN также, кажется, имеет, это - периодические отклонения.

TortoiseSVN казался более стабильным, когда я использовал его, плюс он имеет некоторые расширенные функции (как хороший редактор конфликта), что Анку все еще недостает. Вот почему я использую и Анк и SVN для лучшего из обоих миров.

1
ответ дан 13 December 2019 в 19:37
поделиться

visualsvn + ankhsvn работает отлично для меня

0
ответ дан 13 December 2019 в 19:37
поделиться

Подверсия хороша, но не настолько легка установить (так как она требует Apatche). Смотрите на Хранилище, очень простое устанавливать, и работает очень хорошо с Visual Studio. Это также свободно для единственного разработчика.

0
ответ дан 13 December 2019 в 19:37
поделиться

У меня был хороший опыт с TortoiseSVN, хотя он не интегрируется непосредственно в Visual Studio. Это свободно и интегрируется в Windows вполне хорошо.

Если Вы хотите решение, которое имеет больше интеграции, я рекомендовал бы Хранилище от SourceGear. Это свободно для отдельных пользователей и легко установить. Это имеет больше функций, чем SVN и прямой доступ из VS.

0
ответ дан 13 December 2019 в 19:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: