web-dev-qa-db-fra.com

Dans Eclipse: impossible de trouver ou de charger la classe principale org.testng.remote.RemoteTestNG

Configuration

J'ai la version 2019-12 (4.14.0) d'Eclipse (ayant récemment mis à niveau depuis 2019-03) avec les plugins suivants installés (entre autres):

TestNG 6.14.3.201902250526
TestNG M2E (Maven) Integration (Optional) 6.14.3.201902250526
TestNG P2 Features 6.14.3.r201802240500

Eclipse s'exécute sur jdk1.8.0_152.

Dans Eclipse, mon Java Build Path inclut testng-6.14.3. J'ai essayé de faire correspondre la version du plugin Eclipse avec la version utilisant dans le projet.

Sous Properties -> TestNG J'ai tous les paramètres par défaut. Il n'y a pas de paramètre ici pour "Utiliser Project TestNG.jar".

Ce qui fonctionne

Lorsque j'exécute des tests à partir de la ligne de commande avec Gradle, ils passent tous sans problème.

Il n'y a aucune erreur de compilation dans Eclipse.

Ce qui ne fonctionne pas

Lorsque je lance un test depuis Eclipse (en cliquant avec le bouton droit sur une classe), la console affiche:

Error: Could not find or load main class org.testng.remote.RemoteTestNG

Il semble que j'ai besoin d'une copie de testng-remote.jar. Si cela a été installé dans le cadre du plug-in, ou suis-je censé l'avoir inclus dans mon build.gradle comme dépendance?

Pourquoi ne puis-je pas exécuter des tests depuis Eclipse? Dois-je installer quelque chose de plus pour résoudre cette erreur?

Ce que j'ai essayé

J'ai essayé de supprimer et de réinstaller le plugin TestNG.

5
WW.

Vous avez tutoriel détaillé Gradle TestNG

Par défaut, Gradle exécutera tous les tests qu'il détecte, ce qu'il fait en inspectant les classes de test compilées. Lorsque nous spécifions useTestNG (), Gradle recherche toutes les méthodes annotées avec @Test et les exécute.

Exemple 1. Vous trouverez ci-dessous la configuration de base de la tâche "test"

plugins {
    id 'Java'
}    
group 'com.test'
version '1.0-SNAPSHOT'    
sourceCompatibility = 1.8    
repositories {
    mavenCentral()
}    
dependencies {
    compile group: 'org.testng', name: 'testng', version: '6.14.3'
}    
test {
    useTestNG()
}

Pour Gradle utilisez les dépendances testCompile:

repositories {
    jcenter()
}     
dependencies {
    testCompile 'org.testng:testng:6.10'
}

Pour une version spécifique, vous avez des options,

  1. Installer depuis le site de mise à jour
  • Sélectionnez Aide/Installer un nouveau logiciel ...
  • Saisissez l'URL du site de mise à jour dans le champ "Travailler avec:":
  • Site de mise à jour pour publication: http://dl.bintray.com/testng-team/testng-Eclipse-release/ .
  • Assurez-vous que la case à côté de l'URL est cochée et cliquez sur Suivant.
  • Eclipse vous guidera ensuite tout au long du processus.
  • Vous pouvez également installer les anciennes versions des plug-ins ici. Notez que les URL sur cette page sont également des sites de mise à jour, pas des liens de téléchargement direct.
  1. Construisez TestNG à partir du code source

    vous pouvez télécharger la source et créer la distribution vous-même:

  git clone git://github.com/cbeust/testng.git
  cd testng
  ./build-with-gradle
0
user7294900

Je ne me souviens pas d'un tel problème pour Gradle, mais il ressemble au problème des tests sur Maven (avec la construction automatique désactivée). L'âme est de reconstruire le projet (pour maven c'est ia alt + f5) et à cause d'une telle reconstruction - le cache est mis à jour.

0
lmetrak

Pouvez-vous essayer de l'ajouter dans votre build.gradle.

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath "io.spring.gradle:dependency-management-plugin:1.0.3.RELEASE"
        classpath group: 'org.testng', name: 'testng', version: '6.8.+'
    } }

Modifiez la version de testng selon votre utilisation.

0
Sobhit Sharma