当我运行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文件正常工作才能将我的项目演示给团队。
请求更新的代码......
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
答案 0 :(得分:2)
错误实际上已经在您的堆栈跟踪中:
方法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:
setup()
方法中。但从我所看到的情况来看,实际上并没有什么需要...... tearDown()