簡體   English   中英

運行gradle構建時出錯

[英]Error running gradle build

當我運行gradle build時,它失敗並出現以下錯誤:

ola@ola-VirtualBox:~$ cd workspace/sample/
ola@ola-VirtualBox:~/workspace/sample$ gradle build
:compileJava
:processResources
:classes
:jar
:startScripts
:distTar
:distZip
:assemble
:compileTestJava
:processTestResources
:testClasses
:test

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

org.gradle.AllMethodsTest > initializationError FAILED
    java.lang.Exception

39 tests completed, 39 failed
:test FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':test'.
> There were failing tests. See the report at: file:///home/ola/workspace/sample/build/reports/tests/index.html

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 11.356 secs

下面是我的gradle.build文件的圖像:

構建文件

項目結構如下: 項目結構

當我運行gradle build或gradle clean build時,我不斷收到錯誤。 請將任何幫助...我真的需要讓index.html文件工作,然后才能將我的項目演示給團隊。

index.html文件堆棧跟蹤:所有的錯誤相同 的index.html

要求更新的代碼......

package main.java.Functional;

import static org.junit.Assert.assertTrue;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import main.java.Functional.AllMethodsTestcases.performAction;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;


/**
 * This class is used for testing all the indo functionalities.
 * 
 * @author Ola
 */
public class AllMethodsTest {

    /**
     * Variables to set up driver and browser.
     */
    public static AllMethods callMethod;
    public static WebDriver driver;
    public static String ID;
    public static String filePath = "C:\\Users\\Ola\\workspace\\Config.properties";

    /**
     * Setup method to run chrome browser
     * @param args
     * @throws Exception
     */
    @Before
    public static void setup(String[] args) throws Exception {
        callMethod = new AllMethods();
        callMethod.setup();
        callMethod.driver.get("http://independent.ie");
        // Maximize browser window
        callMethod.driver.manage().window().maximize();
        // store current url in a string
        String site = callMethod.driver.getCurrentUrl();
        // print out the URL in the console
        System.out.println("The current Url IS: " + site);
        // Get the OS on which the driver is running.......
        String detectOS = log.DetectOS();
        log.log(detectOS);
        Thread.sleep(7000);
    }

    /**
     * Main Method to start the browser and run all necessary testcases.     * 
     * @param args
     * @throws Exception
     */
    @Before
    public static void main(String[] args) throws Exception {

        // specify the Test to Run.........
        performAction tc = performAction.acct_Profile;
        try {
            setup(args);

        } catch (Exception e) {
            log.log("Error while setting up the driver.");
        }

        try {

            switch (tc) {
            case testMouseOverJobs:
                testVerifyJobsLink();
                break;
            case testMouseOverCars:
                testVerifyCarsLink();
                break;
            case testMouseOverDating:
                testVerifyDatingLink();
                break;
            case testMouseOverDeath:
                testVerifyDeathNoticesLink();
                break;
            case testMouseOverFitMag:
                testVerifyFitMagLink();
                break;
            case testMouseOverHotels:
                testVerifyHotelsLink();
                break;
            case click_subscribe:
                testVerifySubscribeLink();
                break;
            case click_SignInNative:
                testVerifySignIn_Native();
                break;
            case click_SignUpNative:
                testVerifySignUp_Native();
                break;
            case searchUser:
                testVerifySearchUser();
                break;
            case deleteUser:
                testVerifyDeleteUser();
                break;
            case click_SignInFB:
                testVerifySignInFB();
                break;
            case click_SignInFB_EditInfo:
                testVerifySignInFB_EditInfo();
                break;
            case click_SignInGoogle:
                testVerifySignInGoogle();
                break;
            case click_MyAcct_SS:
                testVerifyClick_MyAcctPage_forS_S_user();
                break;
            case click_MyAcct:
                testVerifyClick_MyAcct();
                break;
            case acct_Profile:
                testVerifyAcct_ProfileUpdated();
                break;
            case acct_Password:
                testVerifyAcct_PasswordChange();
                break;
            case acct_SocialAccts_FB:
                testVerifyAcct_SocialLink_FB();
                break;
            case acct_SocialAccts_Google:
                testVerifyAcct_SocialLink_Google();
                break;
                }
        } catch (Exception e) {
            log.log("There was an Exception while running the test: "
                    + e.getMessage());
        }
        tearDown();
    }



    /**
     * "C:\\Users\\Ola\\workspace\\Config.properties"
     * @throws Exception
     */
    @Test
    private static void testVerifyFileExist() throws Exception {
        boolean verify =callMethod.FileExist();
        if(verify)
        {
            log.log("File does exist");
        }else
        {
            log.log("File does not exist, .....");
        }
        tearDown();
    }

    @Test
    private static void testVerifyloadConfig_File() throws Exception {
        log.divider("Load Config file path specified");
        String response =callMethod.parseConf_File("NATIVE_PASSWORD");
        log.log(response);
        tearDown();
    }

    /**
     * Verifies JOB link on home page
     * @throws Exception
     * @author Ola
     */
    @Test
    public static void testVerifyJobsLink() throws Exception {
        log.header("....... Verify JOBS Link.........");
        callMethod.hoverAndClickOnce(By.cssSelector(AllMethodsCONSTANTElements.JOBS),
                By.cssSelector(AllMethodsCONSTANTElements.IRISHJOBS), "JOBS", "JOBS");
        tearDown();
    }
    /**
     * Verifies CARS link on home page
     * @throws Exception
     * @author Ola
     */
    @Test
    public static void testVerifyCarsLink() throws Exception {
        log.header("....... Verify CARS Link.........");
        String[] elementNames = new String[] { AllMethodsCONSTANTElements.CARSIRELAND,
                AllMethodsCONSTANTElements.USED_CARS_SEARCH, AllMethodsCONSTANTElements.CAR_DEALERS };
        for (String elementName : elementNames) {
            log.divider("1st Element ......'CarsIreland.ie'.....");
            if (callMethod.elementPresent(By.cssSelector(elementName),
                    "CARS_IRELAND")) {
                callMethod.hoverAndClickMultiple(
                        By.cssSelector(AllMethodsCONSTANTElements.CARS),
                        By.cssSelector(AllMethodsCONSTANTElements.CARSIRELAND), "CARS",
                        "CarsIreland.ie");
                Thread.sleep(3000);
                log.header2("");
            }
            log.divider("2nd Element .......'Used Car Search.....'");
            log.step("");
            if (callMethod.elementPresent(By.cssSelector(elementName),
                    "USED CAR SEARCH")) {
                log.log("Open Used Car Search link.....");
                callMethod.hoverAndClickMultiple(
                        By.cssSelector(AllMethodsCONSTANTElements.CARS),
                        By.cssSelector(AllMethodsCONSTANTElements.USED_CARS_SEARCH),
                        "CARS", "USED CAR SEARCH");
                Thread.sleep(3000);
                log.header2("");
            }
            log.divider("3rd Element .......'Car Dealers'..........");
            log.step("");
            if (callMethod.elementPresent(By.cssSelector(elementName),
                    "CAR DEALERS")) {
                log.log("Open Cars Dealers Link........");
                callMethod.hoverAndClickMultiple(
                        By.cssSelector(AllMethodsCONSTANTElements.CARS),
                        By.cssSelector(AllMethodsCONSTANTElements.CAR_DEALERS), "CARS",
                        "CAR DEALERS");
                break;
            }
        }
        tearDown();
    }
    /**
     *  Verifies my profile updated NATIVELY
     * @throws Exception
     * @author Ola
     */
    @Test
    public static void testVerifyAcct_ProfileUpdated() throws Exception {
        log.header("........ Verify MY ACCOUNT PROFILE section ........");
        String finalResponse = callMethod.profileSection(
                callMethod.parseConf_File("EMAIL_ADDRESS"),
                callMethod.parseConf_File("NATIVE_PASSWORD"), 
                callMethod.parseConf_File("DISPLAY_NAME"),
                callMethod.parseConf_File("FIRST_NAME"),
                callMethod.parseConf_File("LAST_NAME"),
                callMethod.parseConf_File("ADDRESS_1"),
                callMethod.parseConf_File("ADDRESS_2"),
                callMethod.parseConf_File("CITY"),
                callMethod.parseConf_File("COUNTRY"),
                callMethod.parseConf_File("COUNTRY_2"),
                callMethod.parseConf_File("COUNTY"),
                callMethod.parseConf_File("COUNTY_2"),
                callMethod.parseConf_File("POSTCODE"),
                callMethod.parseConf_File("TELEPHONE"));

        if (finalResponse.contains("DOES NOT Exist")) {
            log.log("User DOES NOT Exist in Database.... You will have to Sign Up.");

        } else if (finalResponse.contains("FACEBOOK")) {
            log.log("User Exist in Database with FACEBOOK Social Account and "
                    + "Cannot Sign Up Natively......Open My Acct process terminated!........");
        } else if (finalResponse.contains("GOOGLE")) {
            log.log("User Exist in Database with GOOGLE Social Account and "
                    + "Cannot Sign Up Natively......Open My Acct process terminated!........");
        }else if (finalResponse.contains("STILL DOES NOT EXIS")){
            log.log("CANNOT continue process as COUNTRY or COUNTY specified STILL DO NOT exist on list, ..pls contact Customer support");
        }else if (finalResponse.contains("Disabled state")) {
            log.log("Button is in Disabled state.....Profile was "
                    + "NOT updated as NO Update was made.....");
        } else if (finalResponse.contains("Successfully")) {
            log.log("Profile was Successfully updated");
        } else if (finalResponse.contains("NOT updated")) {
            log.log("Profile was NOT updated.... pls contact Gigya customer service......");
        } else if (finalResponse.contains("MY ACCOUNT page")) {
            log.log("MY ACCOUNT page Successfully Opened and updated as expected.......");
        }
        tearDown();
    }

    @After
    public static void tearDown(){
        callMethod.close();
    }

構建命令的結果

ola@ola-VirtualBox:~/workspace/sample$ gradle clean build -x test
:clean
:compileJava
:processResources
:classes
:jar
:startScripts
:distTar
:distZip
:assemble
:check
:build

BUILD SUCCESSFUL

Total time: 8.445 secs

下面的新輸出 輸出解釋 輸出截圖

錯誤實際上已經在您的堆棧跟蹤中:

方法testVerifyPrivacyStatement()不應該是靜態的

那是你的測試方法應該有以下簽名:

@Test
public void testWhatEverYouThingNeedsToBeTested() throws Exception {
    // Put you test code here
}

此外, @Before@After方法也不能是靜態的,您不需要手動調用@After方法。 這些方法在每個測試方法之前和之后由JUnit調用。 你應該認真閱讀一些JUnit教程和不同注釋的Javadoc!

@Before
public void setup() throws Exception {
    // This method will be called by JUnit _before_ execution of each test
    // Do whatever is needed to initialize the runtime environment for your tests
}

@After
public void tearDown() throws Exception {
    // This method will be called by JUnit _after_ execution of each test
    // Free resources allocated during the initialization or the tests themselves
}

最后但絕對不是最不重要的。 對於JUnit測試,main方法絕對沒有意義。 如果你想以獨立的方式執行你的測試,你可以保留它,但我寧願刪除它。 如果要保留它,則需要從方法中刪除@Before注釋,並且需要以編程方式通過JUnit執行測試,以使注釋正常工作。


TLDNR:

  • 刪除測試類中的所有靜態修飾符
  • 從測試類中刪除main方法。 如果測試執行需要一些初始化,請將其放在setup()方法中。 但從我所看到的,那里實際上沒有什么需要......
  • 刪除對tearDown()的手動調用
  • 閱讀一些關於Java代碼結構( 包課上的Oracle課程 )和JUnit( JUnit基本用法 )的基礎教程

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM