Выполненные Junit-тесты из нескольких проектов удобно быстро в Eclipse

Как все сказали, совместно используемый ресурс - конкретно что-то, что не может обработать параллельный доступ.

Одним определенным примером, который я видел, является Индексный Писатель Поиска Lucene.

20
задан Ansgar 16 July 2009 в 13:49
поделиться

3 ответа

Вы не можете сделать это через пользовательский интерфейс. Если посмотреть на точки расширения, то элемент самого высокого уровня, который будет собирать JUnit, - это Project. Я полагаю, вы могли бы написать плагин, чтобы добавить дополнительный элемент контекста / ярлык для рабочего набора, сделать рабочие наборы элементов верхнего уровня в проводнике пакетов и сгруппировать проекты, которые вы хотите протестировать, вместе под этим рабочим набором. Проблемы с этим заключаются в том, что у вас возникнут проблемы с определением правил контекста для включения / отключения функции «запускать от имени», и я не уверен, что семантика распространяется на рабочие наборы. Поэтому вам придется написать какую-то оболочку для итерации содержащихся проектов и сбора их тестовых типов. Это действительно кажется интересной маленькой проблемой. Я мог бы поиграть с ним сегодня после школы.

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

Если вы создаете TestSuite для каждого проекта и еще один uber TestSuite, который ссылается на все комплекты проектов, вы должны проверять, включен ли каждый тест, что подвержено ошибкам.

Если вы не хотите возиться с плагины или связанные ресурсы, вам, вероятно, лучше всего использовать Ant.

4
ответ дан 30 November 2019 в 01:23
поделиться

You could define a separate project that depends on the other projects, which contains a suite referencing the individual tests or suites from the different projects. Something like this:

@RunWith(Suite.class)
@Suite.SuiteClasses( { FirstProjectSuite.class, SecondProjectSuite.class} )
public class AllSuites { }
3
ответ дан 30 November 2019 в 01:23
поделиться

I am not sure you can't do it from UI but from ant it's possible even if you are not building you plugins using ant. Nevertheless this method is not so trivial but once it's set up, things are cool ;o)

Check here for more informations:

http://www.eclipse.org/articles/article.php?file=Article-PDEJUnitAntAutomation/index.html

0
ответ дан 30 November 2019 в 01:23
поделиться
Другие вопросы по тегам:

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