не удалось найти или загрузить основной класс org.tesng.TestNG

1

Я использую testng-6.8.21.jar для написания тестового примера по следующей ссылке:

http://www.tutorialspoint.com/testng/testng_tutorial.pdf

Я могу скомпилировать java файл TestNGSimpleTest.java

но когда я пытаюсь использовать эту команду:

java -cp "C:\TestNG_WORKSPACE" org.testng.TestNG testng.xml

он говорит:

не удалось найти или загрузить основной класс org.tesng.TestNG

  • 0
    Вы должны добавить test-ng lib в путь к классам. Вы могли бы сделать это проще с Maven, например.
  • 0
    Я добавил банку testng в classpath. Пожалуйста, дайте мне знать, что я делаю неправильно.
Показать ещё 7 комментариев
Теги:
unit-testing
testng

1 ответ

0

Вы должны предоставить полный путь к банкам в пути к классам. Например:

java -cp '/path/to/testng-6.8.8.jar' org.testng.TestNG testng.xml

Но testng требует других зависимостей, которые вы также должны включать в testng к классам:

\- org.testng:testng:jar:6.1.1:test
   +- junit:junit:jar:3.8.1:test
   +- org.beanshell:bsh:jar:2.0b4:test
   +- com.beust:jcommander:jar:1.12:test
   \- org.yaml:snakeyaml:jar:1.6:test

Самый простой способ - использовать диспетчер зависимостей. Например, Maven.

Вкратце, вам нужно (не требуется, но все упрощает) иметь стандартную структуру проекта:

main-directory
  pom.xml <- File required by maven. It always has this name.
  -src
    -main
      -java <- Place your Java classes here
      -resources <- Place your images, conf files here etc.
    -test
      -java <- Place your java test classes here
      -resources <- Place your test resources here.

Затем, с помощью этого простого pom.xml, Maven понимает, что вы хотите тестировать и загружать зависимости testNG:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.mycompany</groupId>
  <artifactId>my-app-name</artifactId>
  <version>1.0.0-SNAPSHOT</version>

  <!-- Declare your dependencies here-->
  <dependencies>
    <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <version>6.1.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

</project>

Затем запустите:

mvn test

И если вы хотите иметь представление о зависимостях, используйте:

mvn dependency:tree

(Вот как я получил предыдущее дерево зависимостей)

  • 0
    это работает для вас, сэр ..
  • 0
    Да. Иметь исходную структуру проекта может быть сложно, если вы делаете это вручную, но ваша любимая IDE (IntelliJ / Eclipse / Netbeans), вероятно, имеет некоторую встроенную функциональность для его создания. Для этого также есть команда maven.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню