导入项目后,无法在运行测试配置时实例化类错误

时间:2017-11-30 21:59:38

标签: java eclipse maven selenium webdriver

用Java编写的eclipse中的maven项目,用于自动化Web应用程序测试。 该项目作为Eclipse中的现有maven项目导入。同一个导入的项目正在我的同事系统上工作,同时面对另一个系统上的错误。试图验证其他帖子,并尝试解决问题,但仍然没有运气。

[RemoteTestNG] detected TestNG version 6.8.0
org.testng.TestNGException: 
Cannot instantiate class com.odlproject.tests.SmokeTest
    at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:38)
    at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:387)
    at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:299)
    at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:110)
    at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:186)
    at org.testng.internal.TestNGClassFinder.<init>(TestNGClassFinder.java:120)
    at org.testng.TestRunner.initMethods(TestRunner.java:409)
    at org.testng.TestRunner.init(TestRunner.java:235)
    at org.testng.TestRunner.init(TestRunner.java:205)
    at org.testng.TestRunner.<init>(TestRunner.java:160)
    at org.testng.remote.support.RemoteTestNG6_5$1.newTestRunner(RemoteTestNG6_5.java:27)
    at org.testng.remote.support.RemoteTestNG6_5$DelegatingTestRunnerFactory.newTestRunner(RemoteTestNG6_5.java:63)
    at org.testng.SuiteRunner$ProxyTestRunnerFactory.newTestRunner(SuiteRunner.java:561)
    at org.testng.SuiteRunner.init(SuiteRunner.java:157)
    at org.testng.SuiteRunner.<init>(SuiteRunner.java:111)
    at org.testng.TestNG.createSuiteRunner(TestNG.java:1273)
    at org.testng.TestNG.createSuiteRunners(TestNG.java:1260)
    at org.testng.TestNG.runSuitesLocally(TestNG.java:1114)
    at org.testng.TestNG.run(TestNG.java:1031)
    at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:114)
    at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
    at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29)
    ... 21 more
Caused by: java.lang.NoClassDefFoundError: il/co/topq/difido/model/execution/Node
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Unknown Source)
    at il.co.topq.difido.ReportManager.createReporterInstances(ReportManager.java:307)
    at il.co.topq.difido.ReportManager.<init>(ReportManager.java:38)
    at il.co.topq.difido.ReportManager.getInstance(ReportManager.java:46)
    at com.selenium.commons.AbstractTestClass.<init>(AbstractTestClass.java:12)
    at com.odlproject.tests.SmokeTest.<init>(SmokeTest.java:42)
    ... 26 more
Caused by: java.lang.ClassNotFoundException: il.co.topq.difido.model.execution.Node
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 33 more

这是test.java文件

package com.odlproject.tests;

import java.io.File;
import java.io.IOException;
import java.util.concurrent.TimeUnit;

import org.apache.commons.io.FileUtils;
import org.openqa.selenium.WebDriver;
import org.testng.ITestResult;
import org.testng.Reporter;
import org.testng.annotations.AfterSuite;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.Listeners;
import org.testng.annotations.Test;

import com.odlproject.pages.DataSet;
import com.odlproject.pages.DeviceConfiurationPage;
import com.odlproject.pages.DrugLibrariesPage;
import com.odlproject.pages.HomePage;
import com.odlproject.pages.LoginPage;
import com.odlproject.pages.MasterDrugLibrary;
import com.odlproject.pages.ProfilesPage;
import com.selenium.commons.AbstractTestClass;
import com.selenium.commons.CommonCode;
import com.selenium.commons.Configuration;
import com.selenium.commons.Screenshot;

@Listeners(Screenshot.class)
public class SmokeTest extends AbstractTestClass {

    public WebDriver driver = Configuration.browser();
    public LoginPage login;
    public HomePage home;
    public MasterDrugLibrary master;
    public DrugLibrariesPage dlp;
    public CommonCode common;
    public DeviceConfiurationPage dc;
    public ProfilesPage profile;
    public DataSet ds;

    public SmokeTest() {
        ds = new DataSet();
        login = new LoginPage();
        home = new HomePage();
        master = new MasterDrugLibrary();
        dlp = new DrugLibrariesPage();
        common = new CommonCode();
        dc = new DeviceConfiurationPage();
        profile = new ProfilesPage();

    }

    @BeforeSuite(alwaysRun = true)
    public void invokeBrowser() {

        driver.get(Configuration.LoginURL());
        //driver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);


    }

    @BeforeMethod(alwaysRun = true)
    public void navigtoHome() {
        driver.manage().deleteAllCookies();
        driver.get(Configuration.LoginURL());
        login.loginToAPP(Configuration.username, Configuration.password);
        // home.validateHomePage();
        // common.waitMethod(3);

    }

    @AfterSuite(alwaysRun = true)
    public void closeBrowser() { 
        driver.quit();
    }

@Test(testName = "logout", description = "logout", groups = { "sanity", "1" }, priority = 1)
    public void logout_LoginBack() {
        home.logout();
        login.loginToAPP(Configuration.username, Configuration.password);
    }

如果需要任何其他详细信息,请发表评论,我将在此处添加。

谢谢。

0 个答案:

没有答案