Тестирование метода вместо тестирования целого файла в Netbeans w/JUnit
Я использую Netbeans 6.8, и самый тонкий способ запускать тесты JUnit из IDE - это щелкнуть правой кнопкой мыши класс под Test Packages
и нажать Test File
В Eclipse можно сузить область действия для тестирования отдельного метода в заданной тестовой жгуте. Как проверить только один отдельный тест из жгута проводов в Netbeans?
Ответы
Ответ 1
UPDATE. NetBeans поддерживает это (например, см. NetBeans 6.8). Просто щелкните правой кнопкой мыши пройденный или неудавшийся тест, а затем нажмите "Запустить снова" или "Отладить". Или щелкните правой кнопкой мыши в редакторе и нажмите "Запуск/Отладка".
Старый
Насколько мне известно, это невозможно. И, возможно, ребята из NetBeans имели в виду, что всегда все тесты должны проходить на одну единицу. Я знаю, что инструменты не должны ограничивать разработчиков, но если один метод занимает слишком много времени - возможно, вам стоит рассмотреть отдельный тест интеграции?
Также посмотрите этот пост. (BTW: в проектах maven, выполняющих тесты единицы , возможно...)
Ответ 2
В NetBeans 7.1 откройте файл unit test, щелкните правой кнопкой мыши в пределах определенного unit test и выберите "Запустить сконфигурированный тест".
Ответ 3
Netbeans 7.1 "Run Focused Test" не работает с моей сборкой, поэтому я использую тестовую группу для отметки тестов, которые я хочу запустить.
@Test(groups={"DEBUG"})
Вы можете настроить Netbeans для запуска этих тестов, добавив -Dgroups=DEBUG
к вашему действию "Файл отладочного теста" в свойствах проекта.
Примечание: это методы TestNG, запущенные с помощью maven/surefire.
Ответ 4
Параметр "Выполнить целенаправленный тест" был недоступен для моего проекта, поскольку в файле project.xml не было действия с именем "run.single.method".
Обходной путь, чтобы заставить это работать:
1) создать новое действие "run.single.method" в файле project.xml (вы можете скопировать действие "run.single").
фрагмент project.xml:
<action name="run.single.method">
<script>nbproject/ide-file-targets.xml</script>
<target>run.single.method</target>
<context>
<property>run.class</property>
<folder>test/src</folder>
<pattern>\.java$</pattern>
<format>java-name</format>
<arity>
<one-file-only/>
</arity>
</context>
</action>
2) создайте новую цель run.single.method в ide-file-target.xml (вы можете скопировать "run-selected-file-in-src") и убедитесь, что у тестового тега есть параметр "method", используя свойство "$ {method}".
фрагмент ide-file-target.xml:
<target name="run.single.method" depends="compile">
<fail unless="run.class">Must set property 'run.class'</fail>
<junit maxmemory="256m" fork="true" haltonerror="true" haltonfailure="true" printsummary="on" jvm="${jdk.dir}/bin/java" showoutput="true">
<sysproperty key="build.basedir" value="${basedir}"/>
<!-- method attribute makes the selected method to be unit tested only -->
<test name="${run.class}" methods="${method}"/>
<formatter type="plain" usefile="false"/>
<classpath refid="CLASSPATH"/>
</junit>
</target>
Теперь вы можете использовать правое меню мыши "Запустить фокусированный тест".
Опция "Запуск сфокусированного теста" также может быть временно недоступна при сканировании проекта
Ответ 5
Используют эту функцию в Netbeans 7.4 и отлично работают!
https://blogs.oracle.com/netbeansphp/entry/run_debug_focused_test_method
Ответ 6
Incase, кто интересуется, что тестирование фокуса также возможно через IntelliJ, щелкнув правой кнопкой мыши на конкретном тесте и запустите