2017-01-30 7 views
2

У меня есть 2 тестовых класса - PostTests и UserTests. Я указал их оба в файле testng.xml, и при запуске с использованием maven я вижу, что все методы 1-го указанного класса в testng запущены, и он зависает .... методы класса 2 не запущены. Он висит. Не могли бы вы помочь мне, что я делаю неправильно.Выполняется только 1 тестовый класс и выполнение TestNG

Ниже мой testng.xml

<suite name="TestAll"> 
    <test name="post"> 
    <classes> 
     <class name="com.vin.vinapi.PostTests"/> 
    </classes> 
    </test> 
    <test name="user"> 
    <classes> 
     <class name="com.vin.vinapi.UserTests"/> 
    </classes> 
    </test> 
</suite> 

Ниже выводится исполнения

[INFO] Scanning for projects... 
[INFO] 
[INFO] ------------------------------------------------------------------------ 
[INFO] Building vinapi 0.0.1-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[WARNING] The POM for com.google.code.gson:gson:jar:2.2.4 is invalid, transitive dependencies (if any) will not be available, enable debug logging for more details 
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ vinapi --- 
[INFO] Using 'UTF-8' encoding to copy filtered resources. 
[INFO] skip non existing resourceDirectory /Users/i332939/Documents/workspace/vinapi/src/main/resources 
[INFO] 
[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ vinapi --- 
[INFO] Nothing to compile - all classes are up to date 
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ vinapi --- 
[INFO] Using 'UTF-8' encoding to copy filtered resources. 
[INFO] skip non existing resourceDirectory /Users/i332939/Documents/workspace/vinapi/src/test/resources 
[INFO] 
[INFO] --- maven-compiler-plugin:2.3.2:testCompile (default-testCompile) @ vinapi --- 
[INFO] Nothing to compile - all classes are up to date 
[INFO] 
[INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ vinapi --- 
[INFO] Surefire report directory: /Users/i332939/Documents/workspace/vinapi/target/surefire-reports 
------------------------------------------------------- 
T E S T S 
------------------------------------------------------- 
Running TestSuite 
Request URL : https://jsonplaceholder.typicode.com/posts 
Response Code : 200 
Request URL : https://jsonplaceholder.typicode.com/posts/2 
Response Code : 200 
Request URL : https://jsonplaceholder.typicode.com/users 

Как вы можете видеть выше 2 тестов от PostTests.java (/posts и /posts/2) выполнен и 1 тест (/users) от UserTests началось, и там повешено только

Когда я двигаю UserTests выше PostTests в testng.xml, то все испытания UserTests выполняются и при 1 тест PostTests начинается он висит.

Тот же выход при запуске через командную строку или через затмение.

+0

Ваш xml кажется прекрасным, так что это зависит от самих тестов. Пожалуйста, напишите больше о фактических тестах. Вы используете какие-либо groupDependencies? Выполняете ли вы свои тесты на параллели или последовательно? –

ответ

1

Пожалуйста, вы можете сгруппировать классы в одном классе, как

<suite name="TestAll"> 
    <test name="post"> 
    <classes> 
     <class name="com.vin.vinapi.PostTests"/> 
     <class name="com.vin.vinapi.UserTests"/> 
    </classes> 
    </test> 
</suite> 

Если он работает нормально, то это, кажется, соединение становится в мертвую блокировку при обработке запроса.

Соединяются ли соединения, созданные отдельно в каждом классе.

+0

Вы правы Монисом, он был разрешен после изменения спецификатора доступа для объекта клиента. Ранее такое же соединение используется для вызовов обоих классов. После его изменения, чтобы сделать отдельное соединение, он сработал. Спасибо брат –