Comment faire pour exécuter TestNG tests de main() dans un fichier exécutable jar?

J'ai un exécutable JAR qui contient toutes les dépendances et les classes de test. J'ai confirmé que la méthode main() est appelée lorsque j'exécute le pot. Je suis en train d'ajouter du code dans main (), de sorte que je peux utiliser un spécifique TestNG de la classe de test. À partir de la documentation sur TestNG.org cela semble être la façon de le faire:

    TestListenerAdapter tla = new TestListenerAdapter();
    TestNG testng = new TestNG();
    testng.setTestClasses(new Class[] { com.some.path.tests.MyTests.class });
    testng.addListener(tla);
    testng.run();

Mon dossier structure est typique:

    /src/main/java/Main.java
    /src/test/java/com/some/path/tests/MyTests.java

Cependant lorsque j'essaie de compiler, j'obtiens cette erreur:

    java: /src/main/java/Main.java:46: package com.some.path.tests does not exist

Est-il de toute façon je peux modifier mon projet afin que testng.setTestClasses() dans main() peut accéder à la classe de test?

OriginalL'auteur TERACytE | 2013-05-09