TestNG xml + Linux OS + Jenkins --> Nothing happening

时间:2018-07-13 08:25:29

标签: selenium jenkins testng

Folder structure: enter image description here

现在,我的Jenkins托管在Linux机器上。因此,在我的基本文件中,将基于OS选择驱动程序。 下面是代码:

//Function to instantiate the WebDriver instance based on the Browser selected for Linux
public WebDriver driverInsLinux(){
    setbaseURL();

    try {
        switch(getBrowser()){

        case "Chrome":
            System.out.println("Inside Linux chrome driver function");
            System.setProperty("webdriver.chrome.driver", "./Linux/Drivers/chromedriver");
            System.out.println("driver launch successful");
            driver=new ChromeDriver();
            driver.get(baseurl);
            break;

            case "Internet Explorer":
                System.setProperty("webdriver.internetexplorer.driver", "./Linux/Drivers/internetexplorerdriver.exe");
                driver=new InternetExplorerDriver();
                break;
            case "Firefox":
                driver=new FirefoxDriver();
                break;
                default:
                    //new PascalBaseClass();
        }
    } catch (IOException e) {

        e.printStackTrace();
    }
    driver.get(baseurl);
    driver.manage().timeouts().pageLoadTimeout(100, TimeUnit.SECONDS);
    driver.manage().window().setSize(new Dimension(1366, 768));
    driver.manage().window().maximize();
    return driver;
}

    //Function to instantiate the WebDriver based on the OS
public WebDriver driverIns(){

    //driver =driverInsWindows();

    switch (getOSName()) {

    case "Windows": driver =driverInsWindows();
        break;
    case "Linux" : driver =driverInsLinux();
        break;
    case "MAC" : driver =driverInsMac();
        break;

    }
    return driver;

}
        //Function to get the OS Name
public String getOSName(){

        oSName = System.getProperty("os.name");
    if(oSName.contains("Windows"))
        oSName= "Windows";
    System.out.println(oSName);
    return oSName;

}

现在LoginLog.java

public class LoginPage extends Base{

/*Members of the current Test Class. The number varies from script
to script depending on the variables and verifications required*/
public WebDriver driver;
private String currentSitePath;
private String testCaseName=getClass().getName().substring(10); 
ExtentTest parentTest;


//Function to Navigate to a particular URL inside CC
public void navigateToURL(WebDriver driver){
    siteURL="";
    this.driver.navigate().to(baseurl+siteURL);
    }


@Test // Main Test Flow for the Script
public void executeScript() throws IOException{

    System.out.println("*******************");
    System.out.println("launching chrome browser");

    parentTest= ReportGenerator.initializeParentTest(getClass().getName().substring(10),"Testing Login Page");

    //Test Case Author assignment in Reports 
    ReportGenerator.assignAuthor(parentTest,"Garima");

    //Setting up Browser Instance
    this.driver=driverIns();

    //Navigating to the required page in CC
    navigateToURL(this.driver);

Jenkins控制台输出:

+ java -version
openjdk version "1.8.0_171"
OpenJDK Runtime Environment (build 1.8.0_171-b10)
OpenJDK 64-Bit Server VM (build 25.171-b10, mixed mode)
+ uname -a
Linux jenkins2.spikes.eng 2.6.32-754.el6.x86_64 #1 SMP Tue Jun 19 21:26:04 
UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
+ id
uid=498(jenkins) gid=498(jenkins) groups=498(jenkins) 
context=system_u:system_r:unconfined_java_t:s0
+ cd CC_Regression
+ chmod -R 777 /var/lib/jenkins/workspace/testing/CC_Regression
+ pwd
/var/lib/jenkins/workspace/testing/CC_Regression
  + export 
 'CLASSPATH=/var/lib/jenkins/workspace/testing/CC_Regression/bin: 
 /var/lib/jenkins/workspace/testing/CC_Regression/lib/*'
 + 
 CLASSPATH='/var/lib/jenkins/workspace/testing/CC_Regression/bin: 
 /var/lib/jenkins/workspace/testing/CC_Regression/lib/*'
 + java org.testng.TestNG testng.xml
 [TestNG] Running:
  /var/lib/jenkins/workspace/testing/CC_Regression/testng.xml

 *******************
 launching chrome browser

 ===============================================
 Suite
 Total tests run: 3, Failures: 3, Skips: 0
 Configuration Failures: 1, Skips: 0
 ===============================================

 Build step 'Execute shell' marked build as failure
 Finished: FAILURE

注意: 1)对于Linux驱动程序:我已经从https://chromedriver.storage.googleapis.com/index.html?path=2.40/

下载了文件:chromedriver_linux64

下载完成后,解压缩文件并将其放置在Linx / Drivers文件夹中

2)在上述功能的不同步骤上尝试了多系统syso。但是似乎像发布System.out.println(“启动chrome浏览器”);它正在崩溃。

0 个答案:

没有答案