TestNG не запускает тесты в testing suite
Я пытаюсь запустить набор тестов с помощью XML и TestNG, но я всегда получаю одно и то же сообщение, используя оба: Eclipse и командную строку:
[TestNG] Running:
/Users/achavez/Programs/Selenium/java/src/tests/resources/testng.xml
===============================================
TestingSuite1
Total tests run: 0, Failures: 0, Skips: 0
===============================================
файл читается правильно, но кажется, что тесты не работают.
это содержимое моего testng.XML-код:
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="TestingSuite1" verbose="1">
<test name="Test1" >
<packages>
<package name="tests"/>
</packages>
</test>
</suite>
и вот как выглядит моя структура каталогов в Eclipse:
кроме того, это также, как я пытаюсь запустить тестирование suite через командную строку:
java -jar /Applications/Zend Studio.app/Contents/Resources/Java/plugins/org.testng.eclipse_6.8.6.20141201_2240/lib/testng.jar src/tests/resources/testng.xml
Я попытался очистить проект через eclipse, и это, похоже, не помогло. Я также попытался запустить:
mvn clean
но это тоже не сработало.
любая помощь, указывая мне в правильном направлении будет принята с благодарностью!
9 ответов
вы также можете проверить импорт для импортированной тестовой аннотации, должно быть:
import org.testng.annotations.Test;
@Test
public myTest(){ ... }
а не например:
import org.junit.Test;
Мне пришлось изменить модификатор доступа к методу на public из private, чтобы заставить его работать .
по-видимому, TestNG ошибается в отношении создания XML-файла для набора тестов.
хотя, следуя их инструкциям в письме, мои тесты не были запущены. Я закончил с этим testng.xml
файл и мои тесты, начали работать:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="TestingSuite" parallel="none">
<test name="Test1">
<classes>
<class name="tests.Page1"/>
</classes>
</test>
<test name="Test 2">
<classes>
<class name="tests.Page2"/>
</classes>
</test>
</suite>
Я испытал аналогичную проблему, и она была решена путем выполнения проекта clean в Eclipse (Project-> Clean-> Clean Selected project)
в моем случае аннотация @Test была автоматически импортирована IDE как import org.junit.Test
.
после изменения его import org.testng.annotations.Test
тесты были подобраны правильно.
в моем случае тест был случайно отмечен как" enabled = false " внутри @Test (...). Убедитесь, что значение для вас имеет значение "true".
У меня также была эта проблема, и ни одно из вышеперечисленных решений не сработало. Перезапуск Eclipse, однако, сделал. Я знаю, что это кажется ненужным ответом, но я сам сэкономил бы много времени,если бы сделал это раньше, поэтому я все равно отправлю его.
у меня была такая же проблема, и вот мои результаты: В моем проекте у меня был тестовый файл в
src/test/java/com/temporary/core
и в то же время у меня были ресурсы для теста в
src/test/resources/com/temporary/Core
Как я обнаружил, testng попытался найти тестовый файл во втором каталоге.
когда я переименовал каталог с ресурсами из Core в tcore, проблема была исправлена.
у меня была эта же проблема, вот что сработало для меня:
-
Я поместил все библиотеки TestNG в отдельную папку lib в моем проекте
a.
com.beust.jcommander_1.72.0.jar
b.
org.apache-extras.beanshell.bsh_2.0.0.b6.jar
c.
org.testng_6.14.2.r201802161450.jar
d.
or.yaml.snakeyaml_1.17.0.jar
Я также поместил копию selenium-server и chromedriver в папку lib, а также
-
из моей папки проекта (с
testng.xml
расположенном в проекте корень) я побежал:java -cp .\lib\*;.\target\classes org.testng.TestNG testng.xml