TestNG Тесты не найдены. Ничего не запускалось при выполнении автоматических тестов с использованием Selenium через TestNG

изображение

Я хочу знать, какое именно программное обеспечение мне следует установить, прежде чем запускать проект автоматизации. Веб-драйвер Selenium, selenium java, testNG, junit были установлены, но с этим тоже есть некоторые проблемы. 1. Java-файл Selenium не содержит больше JAR-файлов, как люди показывают в своих видеоуроках. 2. Когда я собираюсь запустить свой проект как testNG, eclipse сказал, что брандмауэр Windows заблокировал некоторые функции этого приложения.


person Jimin Park    schedule 26.06.2019    source источник
comment
методы тестирования должны иметь аннотацию @Test   -  person Mustahsan    schedule 26.06.2019
comment
В вашем случае отсутствует аннотация @test. Так как он не может найти тест   -  person Akshay Dubey    schedule 26.06.2019


Ответы (5)


Это сообщение об ошибке...

[TestNG] No tests found. Nothing was run

... подразумевает, что TestNG не нашел никаких @Test для выполнения.

Ваша основная проблема заключается в том, что вы импортировали Test как:

import org.testng.annotations.Test;

Но в вашем блоке кода нет @Test как такового, но есть @BeforeClass. Поскольку тестов нет, TestNG не находит ни одного теста для выполнения.


Решение

Самым простым решением было бы изменить аннотацию @BeforeTest на @Test и выполнить свой тестовый пример / набор тестов.

person DebanjanB    schedule 26.06.2019

Поскольку ваш основной метод был помещен в аннотацию перед классом. Основной метод не принимает никаких аннотаций. Если вы предоставите какую-либо аннотацию TestNG основному методу, возникнет эта ошибка. При использовании TestNG вы не пишете основной метод. Дело не в том, что основной метод вместе с другими тестами с аннотацией @test не будет выполняться, просто основной метод не принимает никаких аннотаций. Только неосновные методы принимают аннотации TestNG. Если у вас есть обычный основной метод Java и другие методы @test в том же классе, программа будет скомпилирована и успешно запущена, но основной метод будет проигнорирован и вообще не запустится. Будут работать только другие методы @test.

person Yuvraj    schedule 04.10.2019

Во-первых, аннотация @BeforeClass не является @Test, она работает только как подсказка или руководство для выполнения фактического @Test. Замените @BeforeClass на @Test и снова замените (public static void main(String[]args) на public void guru99() или public static void guru99().

person KOFI O.    schedule 03.11.2020

Я столкнулся с этой ошибкой, когда мои методы test (@Test с комментариями) в моем тестовом классе Groovy TestNG были объявлены с использованием синтаксиса метода def из Groovy. TestNG действительно позволяет вам писать свои тестовые методы в Groovy, но вызывает раздражение, если они не имеют обычного синтаксиса, объявленного в Java.

Не это:

@Test
def testDoWork {
   ...

Сделайте следующее:

@Test
public void testDoWork {
   ...

Верните его к синтаксису @Test public void testMethodName() {, и все будет хорошо.

person dan    schedule 18.12.2020

Эта ошибка также может возникать, когда мы пытались запустить тестовый набор TestNG без исправления ошибки пути сборки в проекте (jar testNG был добавлен после настройки проекта..)

Таким образом, вы не получите ошибку времени компиляции для любых используемых аннотаций TestNG, но при попытке запустить код вы попадете в эту ошибку, поскольку Project не сможет построить свойства TestNG, пока вы не избавитесь от ошибок пути сборки....

Разрешение:

1. проверьте правильность использования аннотаций.

2. проверьте, существует ли в проекте какая-либо ошибка пути сборки. если да, то решите проблему в вашем пути сборки, а затем попробуйте еще раз.

person Aditya Shastri    schedule 28.04.2021