Example usage for org.openqa.selenium By linkText

List of usage examples for org.openqa.selenium By linkText

Introduction

In this page you can find the example usage for org.openqa.selenium By linkText.

Prototype

public static By linkText(String linkText) 

Source Link

Usage

From source file:bst.cpo.automation.dm.actions.SystemOverview_Actions.java

public void User_Results_Email_Click(String strEmail) {
    logThis("Nav: Clicking email link '" + strEmail + "', opening properties panel.");
    WebElement element = DMDriver.findElement(By.linkText(strEmail));
    element.click();//from   w  ww  .j  a v  a  2 s. c  o  m
}

From source file:budget.WebDriverManager.java

private static void refreshAccountsWF() {
    int attempts = 3;
    int attempt = 1;
    Boolean isDownloaded = false;
    List<String> credentials = getCredentials(4);

    while ((attempt <= attempts) && !isDownloaded) {
        try {// w  w  w .j  a  v  a 2  s. co  m
            driver = new HtmlUnitDriver(true);
            wait = new WebDriverWait(driver, timeout);
            java.util.logging.Logger.getLogger("com.gargoylesoftware.htmlunit")
                    .setLevel(java.util.logging.Level.OFF);
            java.util.logging.Logger.getLogger("org.apache.http").setLevel(java.util.logging.Level.OFF);

            driver.get("Http://www.wellsfargo.com");
            driver.findElement(By.id("userid")).clear();
            driver.findElement(By.id("userid")).sendKeys(credentials.get(0));
            driver.findElement(By.id("password")).clear();
            driver.findElement(By.id("password")).sendKeys(credentials.get(1));
            driver.findElement(By.id("btnSignon")).click();
            waitAndClick(driver, wait, By.xpath("//th[@id='cashAccount1']/a"));

            runQueryWF(driver, wait, 4);
            runQueryWF(driver, wait, 5);
            runQueryWF(driver, wait, 6);

            driver.findElement(By.linkText("Sign Off")).click();
            driver.close();
            driver.quit();

            isDownloaded = true;
        } catch (Exception ex) {
            driver.quit();
            trace(ex.getMessage(), taLog);
            clearBatch(stmt);
            attempt++;
        }
        ;
    }
    trace((isDownloaded ? "Downloaded" : "Not downloaded") + " from " + attempt
            + ((attempt == 1) ? " attempt" : " attemps"), taLog);

    executeBatch(stmt, taLog);
}

From source file:budget.WebDriverManager.java

private static void runQueryWF(WebDriver driver, WebDriverWait wait, int account) {
    String date;/*from ww  w .jav  a 2  s .  c om*/
    String Analytics;
    String Category;
    Double amount;
    String accountName = getAccountName(stmt, account);

    //Selecting and wait for certain account page
    if (account != 4) {
        new Select(driver.findElement(By.id("accountDropdown"))).selectByIndex(account - 4);
        driver.findElement(By.name("accountselection")).click();
    }
    wait.until(ExpectedConditions.textToBePresentInElement(driver.findElement(By.className("moremarginbottom")),
            accountName));

    //Gatherng total amount
    if (account == 6) {
        String limitStr = driver.findElement(By.xpath("//table[@id='balancedetailstable']/tbody/tr/td"))
                .getText();
        String balanceStr = driver.findElement(By.xpath("//table[@id='balancedetailstable']/tbody/tr[3]/td"))
                .getText();
        //amount = convertStringAmountToDouble(balanceStr) - convertStringAmountToDouble(limitStr);
        amount = convertStringAmountToDouble(balanceStr); //just for SECURE CARD
    } else {
        amount = convertStringAmountToDouble(
                driver.findElement(By.className("availableBalanceTotalAmount")).getText());
    }
    addTotal(stmt, getTimestamp(), account, amount, taLog);

    //Gathering transactinos
    if (account == 6) {
        String strAmount;
        driver.findElement(By.id("a.creditcardtempauth")).click();
        waitForElement(wait, By.xpath("//tbody[@id='tempAuthSection']/tr"));
        List<WebElement> rows = driver.findElements(By.xpath("//tbody[@id='tempAuthSection']/tr"));
        for (WebElement row : rows) {
            if (!"You have no temporary authorizations for this account.".equals(row.getText())) {
                date = rotateDate(row.findElement(By.className("rowhead")).getText(), "mm/dd/yy");
                Analytics = prepareTextForQuery(row.findElement(By.className("text")).getText());
                strAmount = row.findElements(By.className("amount")).get(0).getText();
                if ("+".equals(strAmount.substring(0, 1))) {
                    amount = convertStringAmountToDouble(strAmount);
                } else {
                    amount = -convertStringAmountToDouble(strAmount);
                }
                addTransaction(true, stmt, date, account, "", Analytics, amount, true, taLog);
            }
        }
        rows = driver.findElements(By.xpath("//table[@id='CreditCardTransactionTable']/tbody[4]/tr"));
        for (WebElement row : rows) {
            if (row.findElements(By.className("rowhead")).size() == 1) {
                if (!"".equals(row.findElement(By.className("rowhead")).getText())) {
                    date = rotateDate(row.findElement(By.className("rowhead")).getText(), "mm/dd/yy");
                    WebElement cell = row.findElement(By.className("text"));
                    Analytics = prepareTextForQuery(cell.findElement(By.xpath("span")).getText());
                    strAmount = row.findElements(By.className("amount")).get(0).getText();
                    if ("+".equals(strAmount.substring(0, 1))) {
                        amount = convertStringAmountToDouble(strAmount);
                    } else {
                        amount = -convertStringAmountToDouble(strAmount);
                    }
                    if (amount > 0) {
                        Category = "";
                    } else {
                        cell.findElement(By.className("detailsSection")).click();
                        waitForElement(wait, By.xpath("//table[@id='expandCollapseTable']/tbody/tr[2]/td[2]"));
                        Category = cell
                                .findElement(By.xpath("//table[@id='expandCollapseTable']/tbody/tr[2]/td[2]"))
                                .getText();
                    }
                    addTransaction(true, stmt, date, account, Category, Analytics, amount, false, taLog);
                }
            }
        }
    } else {
        driver.findElement(By.id("timeFilter")).click();
        new Select(driver.findElement(By.id("timeFilter"))).selectByVisibleText("Date Range");
        waitAndClick(driver, wait, By.name("Submit"));

        int itemsOnPage;
        if (driver.findElements(By.className("emdisclosure")).size() == 1) {
            itemsOnPage = Integer.parseInt(driver.findElement(By.className("emdisclosure")).getText()
                    .replace("(", "").replace(" transactions per page)", ""));
        } else {
            itemsOnPage = 0;
        }
        int itemsCounter;
        Boolean isPending = false;
        List<WebElement> lstAmounts;
        do {
            itemsCounter = 0;
            List<WebElement> rows = driver
                    .findElements(By.xpath("//table[@id='DDATransactionTable']/tbody/tr"));
            for (WebElement row : rows) {
                if (row.findElement(By.className("text")).getText().contains("Pending transactions")) {
                    isPending = true;
                }
                if (row.findElement(By.className("text")).getText().contains("Posted Transactions")) {
                    isPending = false;
                }

                if (row.findElements(By.className("rowhead")).size() == 1) {
                    date = rotateDate(row.findElement(By.className("rowhead")).getText(), "mm/dd/yy");
                    Analytics = prepareTextForQuery(row.findElement(By.className("text")).getText());
                    lstAmounts = row.findElements(By.className("amount"));
                    if (!" ".equals(lstAmounts.get(0).getText())) {
                        amount = convertStringAmountToDouble(lstAmounts.get(0).getText());
                    }
                    if (!" ".equals(lstAmounts.get(1).getText())) {
                        amount = -convertStringAmountToDouble(lstAmounts.get(1).getText());
                    }

                    addTransaction(true, stmt, date, account, "", Analytics, amount, isPending, taLog);
                    itemsCounter++;
                }
            }
            if (itemsCounter == itemsOnPage) {
                driver.findElement(By.linkText("Next >")).click();
            }
        } while (itemsCounter == itemsOnPage);
    }
}

From source file:businesscomponents.ReportcomparisonComponents1.java

public void completeReportComparison1() throws Exception {
    Thread.sleep(1000);/*from   www. j  av  a2s  . co m*/
    int flagPrepg, flagPostPg;
    flagPrepg = 0;
    flagPostPg = 0;

    String PreURL = dataTable.getData("General_Data", "PreURL");
    driver.get(PreURL);
    tObj.getUserIdTextBox().clear();
    tObj.getUserIdTextBox().sendKeys(dataTable.getData("General_Data", "UserId"));
    tObj.getPasswordTextBox().sendKeys(dataTable.getData("General_Data", "Password"));
    tObj.getLoginButton().click();

    HashMap<Integer, HashMap<Integer, ArrayList<String>>> pre_reportData = new HashMap<Integer, HashMap<Integer, ArrayList<String>>>();
    HashMap<Integer, HashMap<Integer, ArrayList<String>>> post_Pages_Data = new HashMap<Integer, HashMap<Integer, ArrayList<String>>>();

    try {
        Thread.sleep(1200);
        //            System.out.println("Page title is: " + driver.getTitle());
        if (driver.getTitle().contains("Files & Folders")) {
            String[] foldersName = dataTable.getData("General_Data", "PreReportFolderName").split(";");
            int LengthFolder = foldersName.length;
            for (int folderLoop = 0; folderLoop < foldersName.length - 1; folderLoop++) {
                driver.switchTo().frame(driver.findElement(By.id("TableFrame")));
                driver.switchTo().frame(driver.findElement(By.id("tableFrame")));

                if (waitForElement(driver, By.linkText(foldersName[folderLoop]), 1000)) {
                    driver.findElement(By.linkText(foldersName[folderLoop])).click();
                    report.updateTestLog("Report Navigation",
                            "Navigation to this folder" + foldersName[folderLoop] + "is PASSED", Status.PASS);

                } else {
                    report.updateTestLog("Report Navigation",
                            "Navigation to this folder" + foldersName[folderLoop] + "is failed", Status.FAIL);
                }
                driver.switchTo().defaultContent();
            }

            driver.switchTo().frame(driver.findElement(By.id("TableFrame")));
            driver.switchTo().frame(driver.findElement(By.id("tableFrame")));
            Thread.sleep(4000);
            final String PreReportName_xpath = "//a[contains(@href,'" + foldersName[(LengthFolder - 1)] + "')]";
            int NumberReports = driver.findElements(By.xpath(PreReportName_xpath)).size();
            //System.out.println("Number of Reports :" +NumberReports);

            //reporting for report present or not
            driver.findElements(By.xpath(PreReportName_xpath)).get(NumberReports - 1).click();

            driver.switchTo().defaultContent();
            driver.switchTo().frame(driver.findElement(By.id("TableFrame")));
            driver.switchTo().frame(driver.findElement(By.id("tableFrame")));
            String reportName = dataTable.getData("General_Data", "ReportName");
            //   Thread.sleep(3000);
            //if (waitForElement(driver, By.linkText(reportName), 3000))
            //   {
            //   driver.findElement(By.linkText(reportName)).click();
            //driver.findElements(By.xpath(".//*[@id='ItemsTable']//a")).get(0).click();

            //   int s = driver.findElements(By.xpath(".//*[@id='ItemsTable']//a")).size();
            //driver.findElements(By.xpath(".//*[@id='ItemsTable']//a")).get(s-1).click();

            ArrayList<String> tab = new ArrayList<String>(driver.getWindowHandles());
            driver.switchTo().window(tab.get(1));
            //   System.out.println("Window Title : " +driver.getTitle());
            waitForElement(driver, By.id("toolbarframe"), 4000);
            driver.switchTo().frame(driver.findElement(By.id("toolbarframe")));
            //System.out.println("Switched to frame");
            String no_Of_Pages = driver
                    .findElement(By.xpath("//input[@name='editThis']/parent::td/following-sibling::td/font"))
                    .getText().trim();
            no_Of_Pages = no_Of_Pages.substring(3, no_Of_Pages.length());

            //   System.out.println("value of no_Of_Pages:  " +no_Of_Pages);

            int no_OfPages = Integer.parseInt(no_Of_Pages);

            //System.out.println("No of pages: " +no_OfPages);

            driver.switchTo().defaultContent();
            driver.switchTo().frame(driver.findElement(By.id("reportframe")));
            ArrayList<WebElement> no_of_rows = new ArrayList<WebElement>();
            no_of_rows = (ArrayList<WebElement>) driver
                    .findElements(By.xpath("//body[@onunload='onUnload()']/div/div/div"));
            HashMap<Integer, ArrayList<String>> table_data = null;
            //ArrayList<String> column_Values=new ArrayList<>();            
            ArrayList<WebElement> column_Values_Properties = new ArrayList<WebElement>();
            String dynaXpath;
            //   for (int l = 1; l <= 2; l++)
            for (int l = 1; l <= no_OfPages; l++) {
                if (reportName.contains("MRF601")) {
                    strHeaderVal = mObj.getHeaderValuesrprt601();
                } else if (reportName.contains("MRF202"))
                    strHeaderVal = mObj.getHeaderValuesrprt202();
                else if (reportName.equalsIgnoreCase("MRA112") || reportName.equalsIgnoreCase("MRA114"))
                    strHeaderVal = mObj.getHeaderValuesrprtMRA112_all();
                else if (reportName.equalsIgnoreCase("MRA103"))
                    strHeaderVal = mObj.getrprt103AHeaderelementValues();
                else if (reportName.equalsIgnoreCase("MRF604"))
                    strHeaderVal = mObj.getHeaderValuesrprt604();
                else if (reportName.equalsIgnoreCase("MRM104"))
                    strHeaderVal = mObj.getHeaderValuesMRM104();
                else if (reportName.equalsIgnoreCase("MRF458"))
                    strHeaderVal = mObj.getHeaderValuesMRF458();
                else if (reportName.equalsIgnoreCase("MRF807"))
                    strHeaderVal = mObj.getHeaderValuesrprt807();
                else {
                    strHeaderVal = mObj.getHeaderValuesPre();
                }
                no_of_rows = (ArrayList<WebElement>) driver
                        .findElements(By.xpath("//body[@onunload='onUnload()']/div/div/div"));
                table_data = new HashMap<Integer, ArrayList<String>>();
                for (int i = 2; i <= no_of_rows.size(); i++) {

                    dynaXpath = "//body[@onunload='onUnload()']/div/div/div[" + i + "]/*/nobr";
                    column_Values_Properties = (ArrayList<WebElement>) driver.findElements(By.xpath(dynaXpath));
                    ArrayList<String> column_Values = new ArrayList<String>();
                    if (column_Values_Properties.size() > 0) {
                        for (int j = 0; j < column_Values_Properties.size(); j++) {
                            column_Values.add(j, column_Values_Properties.get(j).getText());
                        }
                    }

                    table_data.put(i, column_Values);

                }

                pre_reportData.put(l, table_data);
                flagPrepg = 1;
                //   System.out.println("Pre data is : " +pre_reportData);
                //table_data.clear();
                if (flagPrepg == 0) {
                    report.updateTestLog("Pre Report" + reportName, "Data is not been stored from Page No" + l,
                            Status.FAIL);
                }

                if (l <= 3 || l > no_OfPages - 3) {
                    report.updateTestLog("Pre Report" + reportName, "Page No" + l, Status.PASS);
                    //System.out.println("Pre data for page "+l+ " is : " +pre_reportData.get(l));
                }
                page.add(strHeaderVal);
                driver.switchTo().defaultContent();
                driver.switchTo().frame(driver.findElement(By.id("toolbarframe")));
                driver.findElement(By.linkText("Next")).click();
                driver.switchTo().defaultContent();
                waitForElement(driver, By.id("reportframe"), 2000);
                driver.switchTo().frame(driver.findElement(By.id("reportframe")));

                flagPrepg = 0;
            }
            pages.add(page);
            driver.switchTo().window(tab.get(0));
            //   } 
            //   else 
            //   {
            //report.updateTestLog("Report Selection", "Not able to find the report Name", Status.FAIL);
            //   } 

        } else {
            report.updateTestLog("Prereport Folders", "Pre Report folders pages is not opened", Status.FAIL);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    String PostURL = dataTable.getData("General_Data", "PostURL");
    driver.get(PostURL);

    tObj.getPostUserIdTextBox().clear();

    tObj.getPostUserIdTextBox().sendKeys(dataTable.getData("General_Data", "UserId"));
    tObj.getPostPasswordTextBox().sendKeys(dataTable.getData("General_Data", "Password"));
    tObj.getPostLoginButton().click();
    try {
        WebElement folderFrame = null;
        String[] postFolderName = dataTable.getData("General_Data", "PostReportFolderName").split(";");
        if (waitForElement(driver, By.id("acFileExplorer"), 4000)) {
            //System.out.println("test1");
            for (int folders = 0; folders < (postFolderName.length - 1); folders++) {
                driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
                folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
                driver.switchTo().frame(folderFrame);

                String dynaXpathFolder1 = "//a[contains(@href,'" + postFolderName[folders] + "')]";

                //if (waitForElement(driver, By.linkText(postFolderName[folders]), 1000)) 
                if (waitForElement(driver, By.xpath(dynaXpathFolder1), 1000)) {
                    driver.findElement(By.linkText(postFolderName[folders])).click();
                    driver.switchTo().defaultContent();
                } else {
                    report.updateTestLog("Post Report Folder Navigation",
                            "Post Report Folder Navigation" + folderFrame + "Has failed", Status.FAIL);
                }
            }

            driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
            folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
            driver.switchTo().frame(folderFrame);
            String postReportName = dataTable.getData("General_Data", "PostReportName");

            System.out.println("Post report name : " + postReportName);

            if (waitForElement(driver, By.linkText(postReportName), 1000)) {
                driver.findElement(By.linkText(postReportName)).click();
                //   System.out.println("Pass1");
                driver.switchTo().defaultContent();
                //   System.out.println("Pass2");
                driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
                //   System.out.println("Pass3");
                folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
                driver.switchTo().frame(folderFrame);
                //   System.out.println("Pass4");
                driver.switchTo().frame(driver.findElement(By.id("toolbarframe")));
                //   System.out.println("Pass5");
                String no_Of_Pages = driver
                        .findElement(
                                By.xpath("//input[@name='editThis']/parent::td/following-sibling::td/font"))
                        .getText().trim();
                no_Of_Pages = no_Of_Pages.substring(3, no_Of_Pages.length());
                int no_OfPages = Integer.parseInt(no_Of_Pages);
                driver.switchTo().defaultContent();
                HashMap<Integer, ArrayList<String>> post_Page_TableData = null;
                //   for (int i = 1; i <= 2; i++)
                for (int i = 1; i <= no_OfPages; i++) {
                    driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
                    folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
                    driver.switchTo().frame(folderFrame);
                    driver.switchTo().frame(driver.findElement(By.id("reportframe")));
                    /* Changes on 11/04/2016
                     * 
                     * 
                     */
                    if (postReportName.contains("MRF601")) {
                        strHeaderVal = mObj.getHeaderValuesrprt601();
                    } else if (postReportName.contains("MRF202"))
                        strHeaderVal = mObj.getHeaderValuesrprt202();
                    else if (postReportName.equalsIgnoreCase("MRA112")
                            || postReportName.equalsIgnoreCase("MRA114"))
                        strHeaderVal = mObj.getHeaderValuesrprtMRA112_all();
                    else if (postReportName.equalsIgnoreCase("MRA103"))
                        strHeaderVal = mObj.getrprt103AHeaderelementValues();
                    else if (postReportName.equalsIgnoreCase("MRF604"))
                        strHeaderVal = mObj.getHeaderValuesrprt604();
                    else if (postReportName.equalsIgnoreCase("MRM104"))
                        strHeaderVal = mObj.getHeaderValuesMRM104();
                    else if (postReportName.equalsIgnoreCase("MRF458"))
                        strHeaderVal = mObj.getHeaderValuesMRF458();
                    else if (postReportName.equalsIgnoreCase("MRF807"))
                        strHeaderVal = mObj.getHeaderValuesrprt807();
                    else
                        strHeaderVal = mObj.getHeaderValuesPost();

                    List<WebElement> no_Of_Rows = driver
                            .findElements(By.xpath("//body[@onunload='onUnload()']/div/div/div"));
                    String dynaXpath;
                    ArrayList<WebElement> column_Values_Elements = new ArrayList<WebElement>();
                    //ArrayList<String> column_Values=new ArrayList<>();
                    post_Page_TableData = new HashMap<Integer, ArrayList<String>>();
                    for (int j = 2; j <= no_Of_Rows.size(); j++) {
                        dynaXpath = "//body[@onunload='onUnload()']/div/div/div[" + j + "]/*/nobr";
                        ArrayList<String> column_Values = new ArrayList<String>();
                        column_Values_Elements = (ArrayList<WebElement>) driver
                                .findElements(By.xpath(dynaXpath));
                        if (column_Values_Elements.size() > 0) {
                            for (int k = 0; k < column_Values_Elements.size(); k++) {
                                column_Values.add(k, column_Values_Elements.get(k).getText());
                            }
                        }

                        post_Page_TableData.put(j, column_Values);
                        //column_Values.clear();

                    }
                    post_Pages_Data.put(i, post_Page_TableData);
                    //System.out.println("Past Pages data is : " +post_Pages_Data);
                    // post_Page_TableData.clear();
                    flagPostPg = 1;
                    if (flagPostPg == 0)
                        report.updateTestLog("Post Report " + postReportName,
                                "Data is not been stored from Page No" + i, Status.FAIL);
                    if (i <= 3 || i > no_OfPages - 3) {
                        report.updateTestLog("Post Report " + postReportName, "Page No" + i, Status.PASS);
                        //System.out.println("Post Page data for page number: "+i+ "  is : " +post_Pages_Data.get(i));
                    }
                    postPage.add(strHeaderVal);

                    driver.switchTo().defaultContent();
                    driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
                    folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
                    driver.switchTo().frame(folderFrame);
                    driver.switchTo().frame(driver.findElement(By.id("toolbarframe")));

                    driver.findElement(By.linkText("Next")).click();
                    driver.switchTo().defaultContent();
                    waitForElement(driver, By.id("acFileExplorer"), 2000);

                    flagPostPg = 0;

                }
                Postpages.add(postPage);

                report.updateTestLog("Storing Data", "Data has been stored for Pre report", Status.PASS);

                compareHeaders();

                comparePreandPost(pre_reportData, post_Pages_Data);
            } else {
                report.updateTestLog("Post Report Navigation", "Not able to find Report Folder", Status.FAIL);
            }
        } else {
            report.updateTestLog("Post Report Folder Navigation",
                    "Not able to find Post Report Folder structure", Status.FAIL);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}

From source file:businesscomponents.ReportcomparisonComponents1.java

public void completeReportComparisonNew() throws Exception {
    Thread.sleep(1000);/*from  w  w w.  j a v  a2 s.c  om*/
    int flagPrepg, flagPostPg;
    flagPrepg = 0;
    flagPostPg = 0;
    String TC_ID = dataTable.getData("General_Data", "TC_ID");
    String PreURL = dataTable.getData("General_Data", "PreURL");
    driver.get(PreURL);
    tObj.getNewUserIdTextBox().clear();
    tObj.getNewUserIdTextBox().sendKeys(dataTable.getData("General_Data", "UserId"));
    tObj.getNewPasswordTextBox().sendKeys(dataTable.getData("General_Data", "Password"));
    tObj.getNewLoginButton().click();

    HashMap<Integer, HashMap<Integer, ArrayList<String>>> pre_reportData = new HashMap<Integer, HashMap<Integer, ArrayList<String>>>();
    HashMap<Integer, HashMap<Integer, ArrayList<String>>> post_Pages_Data = new HashMap<Integer, HashMap<Integer, ArrayList<String>>>();

    try {
        Thread.sleep(1000);
        WebElement folderFrame1 = null;
        if (driver.getTitle().contains("Information Console")) {
            String[] foldersName = dataTable.getData("General_Data", "PreReportFolderName").split(";");
            int LengthFolder = foldersName.length;
            for (int folderLoop = 0; folderLoop < foldersName.length - 1; folderLoop++) {
                folderFrame1 = driver.findElement(By.xpath("//frame[@name='main']"));
                driver.switchTo().frame(folderFrame1);

                if (waitForElement(driver, By.linkText(foldersName[folderLoop]), 100)) {
                    driver.findElement(By.linkText(foldersName[folderLoop])).click();
                    report.updateTestLog("Report Navigation",
                            "Navigation to this folder" + foldersName[folderLoop] + "is PASSED", Status.PASS);

                } else {
                    report.updateTestLog("Report Navigation",
                            "Navigation to this folder" + foldersName[folderLoop] + "is failed", Status.FAIL);
                }
                driver.switchTo().defaultContent();
            }
            folderFrame1 = driver.findElement(By.xpath("//frame[@name='main']"));
            driver.switchTo().frame(folderFrame1);
            Thread.sleep(4000);
            driver.findElement(By.partialLinkText(foldersName[(LengthFolder - 1)])).click();
            driver.switchTo().defaultContent();
            folderFrame1 = driver.findElement(By.xpath("//frame[@name='main']"));
            driver.switchTo().frame(folderFrame1);
            String reportName = dataTable.getData("General_Data", "ReportName");
            waitForElement(driver, By.id("toolbarframe"), 100);
            driver.switchTo().frame(driver.findElement(By.id("toolbarframe")));
            String no_Of_Pages = driver
                    .findElement(By.xpath("//input[@name='editThis']/parent::td/following-sibling::td/font"))
                    .getText().trim();
            no_Of_Pages = no_Of_Pages.substring(3, no_Of_Pages.length());
            int no_OfPages = Integer.parseInt(no_Of_Pages);
            driver.switchTo().defaultContent();
            ArrayList<WebElement> no_of_rows = new ArrayList<WebElement>();
            no_of_rows = (ArrayList<WebElement>) driver
                    .findElements(By.xpath("//body[@onunload='onUnload()']/div/div/div"));
            HashMap<Integer, ArrayList<String>> table_data = null;
            ArrayList<WebElement> column_Values_Properties = new ArrayList<WebElement>();
            String dynaXpath;
            //   for (int l = 1; l <= 2; l++)
            for (int l = 1; l <= no_OfPages; l++) {

                folderFrame1 = driver.findElement(By.xpath("//frame[@name='main']"));
                driver.switchTo().frame(folderFrame1);
                driver.switchTo().frame(driver.findElement(By.id("reportframe")));

                if (reportName.contains("MRF601")) {
                    strHeaderVal = mObj.getHeaderValuesrprt601();
                } else if (reportName.contains("MRF202"))
                    strHeaderVal = mObj.getHeaderValuesrprt202();
                else if (reportName.equalsIgnoreCase("MRA112") || reportName.equalsIgnoreCase("MRA114"))
                    strHeaderVal = mObj.getHeaderValuesrprtMRA112_all();
                else if (reportName.equalsIgnoreCase("MRA103"))
                    strHeaderVal = mObj.getrprt103AHeaderelementValues();
                else if (reportName.equalsIgnoreCase("MRF604"))
                    strHeaderVal = mObj.getHeaderValuesrprt604();
                else if (reportName.equalsIgnoreCase("MRM104"))
                    strHeaderVal = mObj.getHeaderValuesMRM104();
                else if (reportName.equalsIgnoreCase("MRF458"))
                    strHeaderVal = mObj.getHeaderValuesMRF458();
                else if (reportName.equalsIgnoreCase("MRF807"))
                    strHeaderVal = mObj.getHeaderValuesrprt807();
                else if (TC_ID.contains("Report_MRO219"))
                    strHeaderVal = mObj.getHeaderValuesPreMRO219();
                else if (TC_ID.contains("Report_MRA110_UKNOdata_Daily"))
                    strHeaderVal = mObj.getHeaderValuesMRA110_UK_NoData();
                else if (reportName.equalsIgnoreCase("MRF303"))
                    strHeaderVal = null;
                else {
                    strHeaderVal = mObj.getHeaderValuesPre();
                }
                no_of_rows = (ArrayList<WebElement>) driver
                        .findElements(By.xpath("//body[@onunload='onUnload()']/div/div/div"));
                table_data = new HashMap<Integer, ArrayList<String>>();
                for (int i = 2; i <= no_of_rows.size(); i++) {
                    //dynaXpath = "(//body[@onunload='onUnload()']/div/div/div)[" + i + "]//nobr"; //MRF303_Report
                    dynaXpath = "//body[@onunload='onUnload()']/div/div/div[" + i + "]/*/nobr";
                    column_Values_Properties = (ArrayList<WebElement>) driver.findElements(By.xpath(dynaXpath));
                    ArrayList<String> column_Values = new ArrayList<String>();
                    if (column_Values_Properties.size() > 0) {
                        for (int j = 0; j < column_Values_Properties.size(); j++) {
                            column_Values.add(j, column_Values_Properties.get(j).getText());
                        }
                    }

                    table_data.put(i, column_Values);

                }
                pre_reportData.put(l, table_data);
                flagPrepg = 1;
                if (flagPrepg == 0) {
                    report.updateTestLog("Pre Report" + reportName, "Data is not been stored from Page No" + l,
                            Status.FAIL);
                }

                if (l <= 3 || l > no_OfPages - 3) {
                    report.updateTestLog("Pre Report" + reportName, "Page No" + l, Status.PASS);
                }
                page.add(strHeaderVal);
                driver.switchTo().defaultContent();
                folderFrame1 = driver.findElement(By.xpath("//frame[@name='main']"));
                driver.switchTo().frame(folderFrame1);
                driver.switchTo().frame(driver.findElement(By.id("toolbarframe")));
                driver.findElement(By.linkText("Next")).click();
                driver.switchTo().defaultContent();
                flagPrepg = 0;
            }
            pages.add(page);
        } else {
            report.updateTestLog("Prereport Folders", "Pre Report folders pages is not opened", Status.FAIL);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }

    String PostURL = dataTable.getData("General_Data", "PostURL");
    driver.get(PostURL);

    tObj.getPostUserIdTextBox().clear();

    tObj.getPostUserIdTextBox().sendKeys(dataTable.getData("General_Data", "UserId"));
    tObj.getPostPasswordTextBox().sendKeys(dataTable.getData("General_Data", "Password"));
    tObj.getPostLoginButton().click();
    try {
        WebElement folderFrame = null;
        String[] postFolderName = dataTable.getData("General_Data", "PostReportFolderName").split(";");
        if (waitForElement(driver, By.id("acFileExplorer"), 4000)) {
            //System.out.println("test1");
            for (int folders = 0; folders < (postFolderName.length - 1); folders++) {
                driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
                folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
                driver.switchTo().frame(folderFrame);

                String dynaXpathFolder1 = "//a[contains(@href,'" + postFolderName[folders] + "')]";

                //if (waitForElement(driver, By.linkText(postFolderName[folders]), 1000)) 
                if (waitForElement(driver, By.xpath(dynaXpathFolder1), 1000)) {
                    driver.findElement(By.linkText(postFolderName[folders])).click();
                    driver.switchTo().defaultContent();
                } else {
                    report.updateTestLog("Post Report Folder Navigation",
                            "Post Report Folder Navigation" + folderFrame + "Has failed", Status.FAIL);
                }
            }

            driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
            folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
            driver.switchTo().frame(folderFrame);
            String postReportName = dataTable.getData("General_Data", "PostReportName");

            //System.out.println("Post report name : " +postReportName);

            if (waitForElement(driver, By.linkText(postReportName), 1000)) {
                driver.findElement(By.linkText(postReportName)).click();
                //   System.out.println("Pass1");
                driver.switchTo().defaultContent();
                //   System.out.println("Pass2");
                driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
                //   System.out.println("Pass3");
                folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
                driver.switchTo().frame(folderFrame);
                //   System.out.println("Pass4");
                driver.switchTo().frame(driver.findElement(By.id("toolbarframe")));
                //   System.out.println("Pass5");
                String no_Of_Pages = driver
                        .findElement(
                                By.xpath("//input[@name='editThis']/parent::td/following-sibling::td/font"))
                        .getText().trim();
                no_Of_Pages = no_Of_Pages.substring(3, no_Of_Pages.length());
                int no_OfPages = Integer.parseInt(no_Of_Pages);
                driver.switchTo().defaultContent();
                HashMap<Integer, ArrayList<String>> post_Page_TableData = null;
                //   for (int i = 1; i <= 2; i++)

                for (int i = 1; i <= no_OfPages; i++) {
                    driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
                    folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
                    driver.switchTo().frame(folderFrame);
                    driver.switchTo().frame(driver.findElement(By.id("reportframe")));
                    /* Changes on 11/04/2016
                     * 
                     * 
                     */
                    if (postReportName.contains("MRF601")) {
                        strHeaderVal = mObj.getHeaderValuesrprt601();
                    } else if (postReportName.contains("MRF202"))
                        strHeaderVal = mObj.getHeaderValuesrprt202();
                    else if (postReportName.equalsIgnoreCase("MRA112")
                            || postReportName.equalsIgnoreCase("MRA114"))
                        strHeaderVal = mObj.getHeaderValuesrprtMRA112_all();
                    else if (postReportName.equalsIgnoreCase("MRA103"))
                        strHeaderVal = mObj.getrprt103AHeaderelementValues();
                    else if (postReportName.equalsIgnoreCase("MRF604"))
                        strHeaderVal = mObj.getHeaderValuesrprt604();
                    else if (postReportName.equalsIgnoreCase("MRM104"))
                        strHeaderVal = mObj.getHeaderValuesMRM104();
                    else if (postReportName.equalsIgnoreCase("MRF458"))
                        strHeaderVal = mObj.getHeaderValuesMRF458();
                    else if (postReportName.equalsIgnoreCase("MRF807"))
                        strHeaderVal = mObj.getHeaderValuesrprt807();
                    else if (TC_ID.contains("Report_MRO219"))
                        strHeaderVal = mObj.getHeaderValuesPreMRO219();
                    else if (TC_ID.contains("Report_MRA110_UKNOdata_Daily"))
                        strHeaderVal = mObj.getHeaderValuesMRA110_UK_NoData();
                    else if (postReportName.equalsIgnoreCase("MRF303"))
                        strHeaderVal = null;
                    else
                        strHeaderVal = mObj.getHeaderValuesPost();

                    List<WebElement> no_Of_Rows = driver
                            .findElements(By.xpath("//body[@onunload='onUnload()']/div/div/div"));
                    String dynaXpath;
                    ArrayList<WebElement> column_Values_Elements = new ArrayList<WebElement>();
                    //ArrayList<String> column_Values=new ArrayList<>();
                    post_Page_TableData = new HashMap<Integer, ArrayList<String>>();
                    for (int j = 2; j <= no_Of_Rows.size(); j++) {
                        dynaXpath = "//body[@onunload='onUnload()']/div/div/div[" + j + "]/*/nobr";
                        ArrayList<String> column_Values = new ArrayList<String>();
                        column_Values_Elements = (ArrayList<WebElement>) driver
                                .findElements(By.xpath(dynaXpath));
                        if (column_Values_Elements.size() > 0) {
                            for (int k = 0; k < column_Values_Elements.size(); k++) {
                                column_Values.add(k, column_Values_Elements.get(k).getText());
                            }
                        }

                        post_Page_TableData.put(j, column_Values);
                        //column_Values.clear();

                    }
                    post_Pages_Data.put(i, post_Page_TableData);
                    //System.out.println("Past Pages data is : " +post_Pages_Data);
                    // post_Page_TableData.clear();
                    flagPostPg = 1;
                    if (flagPostPg == 0)
                        report.updateTestLog("Post Report " + postReportName,
                                "Data is not been stored from Page No" + i, Status.FAIL);
                    if (i <= 3 || i > no_OfPages - 3) {
                        report.updateTestLog("Post Report " + postReportName, "Page No" + i, Status.PASS);
                        //System.out.println("Post Page data for page number: "+i+ "  is : " +post_Pages_Data.get(i));
                    }
                    postPage.add(strHeaderVal);

                    driver.switchTo().defaultContent();
                    driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
                    folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
                    driver.switchTo().frame(folderFrame);
                    driver.switchTo().frame(driver.findElement(By.id("toolbarframe")));

                    driver.findElement(By.linkText("Next")).click();
                    driver.switchTo().defaultContent();
                    waitForElement(driver, By.id("acFileExplorer"), 2000);

                    flagPostPg = 0;

                }
                Postpages.add(postPage);

                report.updateTestLog("Storing Data", "Data has been stored for Pre report", Status.PASS);

                compareHeaders();

                comparePreandPost(pre_reportData, post_Pages_Data);
            } else {
                report.updateTestLog("Post Report Navigation", "Not able to find Report Folder", Status.FAIL);
            }
        } else {
            report.updateTestLog("Post Report Folder Navigation",
                    "Not able to find Post Report Folder structure", Status.FAIL);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}

From source file:businesscomponents.ReportcomparisonComponents1.java

public void completeReportComparisonMRF303() throws Exception

{
    //completeReportComparisonNew();
    //Login to Pre
    String PreURL = dataTable.getData("General_Data", "PreURL");
    driver.get(PreURL);/*from w  w  w .  jav a2 s  .  co  m*/
    tObj.getNewUserIdTextBox().clear();
    tObj.getNewUserIdTextBox().sendKeys(dataTable.getData("General_Data", "UserId"));
    tObj.getNewPasswordTextBox().sendKeys(dataTable.getData("General_Data", "Password"));
    tObj.getNewLoginButton().click();

    HashMap<Integer, HashMap<Integer, ArrayList<String>>> pre_reportData = new HashMap<Integer, HashMap<Integer, ArrayList<String>>>();
    HashMap<Integer, HashMap<Integer, ArrayList<String>>> post_Pages_Data = new HashMap<Integer, HashMap<Integer, ArrayList<String>>>();
    try {
        WebElement folderFrame1 = null;
        if (driver.getTitle().contains("Information Console")) {
            String[] foldersName = dataTable.getData("General_Data", "PreReportFolderName").split(";");
            int LengthFolder = foldersName.length;
            for (int folderLoop = 0; folderLoop < foldersName.length - 1; folderLoop++) {
                folderFrame1 = driver.findElement(By.xpath("//frame[@name='main']"));
                driver.switchTo().frame(folderFrame1);

                if (waitForElement(driver, By.linkText(foldersName[folderLoop]), 100)) {
                    driver.findElement(By.linkText(foldersName[folderLoop])).click();
                    report.updateTestLog("Report Navigation",
                            "Navigation to this folder" + foldersName[folderLoop] + "is PASSED", Status.PASS);

                } else {
                    report.updateTestLog("Report Navigation",
                            "Navigation to this folder" + foldersName[folderLoop] + "is failed", Status.FAIL);
                }
                driver.switchTo().defaultContent();
            }
            folderFrame1 = driver.findElement(By.xpath("//frame[@name='main']"));
            driver.switchTo().frame(folderFrame1);
            Thread.sleep(2000);
            driver.findElement(By.partialLinkText(foldersName[(LengthFolder - 1)])).click();
            driver.switchTo().defaultContent();
            folderFrame1 = driver.findElement(By.xpath("//frame[@name='main']"));
            driver.switchTo().frame(folderFrame1);
            String reportName = dataTable.getData("General_Data", "ReportName");
            waitForElement(driver, By.id("toolbarframe"), 50);
            driver.switchTo().frame(driver.findElement(By.id("toolbarframe")));
            String no_Of_Pages = driver
                    .findElement(By.xpath("//input[@name='editThis']/parent::td/following-sibling::td/font"))
                    .getText().trim();
            no_Of_Pages = no_Of_Pages.substring(3, no_Of_Pages.length());
            int no_OfPages = Integer.parseInt(no_Of_Pages);
            driver.switchTo().defaultContent();
            ArrayList<WebElement> no_of_rows = new ArrayList<WebElement>();
            no_of_rows = (ArrayList<WebElement>) driver
                    .findElements(By.xpath("//body[@onunload='onUnload()']/div/div/div"));
            HashMap<Integer, ArrayList<String>> table_data_1 = null;
            HashMap<Integer, ArrayList<String>> table_data_2 = null;
            ArrayList<WebElement> column_Values_Properties_1 = new ArrayList<WebElement>();
            ArrayList<WebElement> column_Values_Properties_2 = new ArrayList<WebElement>();
            String dynaXpath;
            for (int l = 1; l <= no_OfPages; l++) {
                folderFrame1 = driver.findElement(By.xpath("//frame[@name='main']"));
                driver.switchTo().frame(folderFrame1);
                driver.switchTo().frame(driver.findElement(By.id("reportframe")));
                no_of_rows = (ArrayList<WebElement>) driver
                        .findElements(By.xpath("//body[@onunload='onUnload()']/div/div/div"));

                table_data_1 = new HashMap<Integer, ArrayList<String>>();
                table_data_2 = new HashMap<Integer, ArrayList<String>>();

                if (l < no_OfPages) {
                    for (int i = 2; i <= no_of_rows.size(); i++) {
                        if (i == (no_of_rows.size() - 3)) {
                            ArrayList<String> column_Values_dummy_1 = new ArrayList<String>();
                            column_Values_dummy_1.add("ByPass");
                            table_data_1.put(i, column_Values_dummy_1);
                        } else {
                            dynaXpath = "(//body[@onunload='onUnload()']/div/div/div)[" + i + "]//nobr";
                            column_Values_Properties_1 = (ArrayList<WebElement>) driver
                                    .findElements(By.xpath(dynaXpath));
                            ArrayList<String> column_Values_1 = new ArrayList<String>();
                            if (column_Values_Properties_1.size() > 0) {
                                for (int j = 0; j < column_Values_Properties_1.size(); j++) {
                                    column_Values_1.add(j, column_Values_Properties_1.get(j).getText());
                                }
                            }
                            table_data_1.put(i, column_Values_1);

                        }
                    }
                    pre_reportData.put(l, table_data_1);

                } else if (l == no_OfPages) {
                    for (int i = 2; i <= no_of_rows.size() - 1; i++) {
                        dynaXpath = "//body[@onunload='onUnload()']/div/div/div[" + i + "]//nobr";
                        column_Values_Properties_2 = (ArrayList<WebElement>) driver
                                .findElements(By.xpath(dynaXpath));
                        ArrayList<String> column_Values_2 = new ArrayList<String>();
                        if (column_Values_Properties_2.size() > 0) {
                            for (int j = 0; j < column_Values_Properties_2.size(); j++) {
                                column_Values_2.add(j, column_Values_Properties_2.get(j).getText());
                            }
                        }
                        table_data_2.put(i, column_Values_2);
                    }
                    pre_reportData.put(l, table_data_2);
                }
                if (l <= 3 || l > no_OfPages - 3) {
                    report.updateTestLog("Pre Report" + reportName, "Page No" + l, Status.PASS);
                }

                driver.switchTo().defaultContent();
                folderFrame1 = driver.findElement(By.xpath("//frame[@name='main']"));
                driver.switchTo().frame(folderFrame1);
                driver.switchTo().frame(driver.findElement(By.id("toolbarframe")));
                driver.findElement(By.linkText("Next")).click();
                driver.switchTo().defaultContent();

            }

            System.out.println("Pre data is :" + pre_reportData);

        }

        else {
            report.updateTestLog("Prereport Folders", "Pre Report folders pages is not opened", Status.FAIL);
        }

    } catch (Exception e) {
        System.out.println("Exception is :" + e);
    }

    String PostURL = dataTable.getData("General_Data", "PostURL");
    driver.get(PostURL);

    tObj.getPostUserIdTextBox().clear();

    tObj.getPostUserIdTextBox().sendKeys(dataTable.getData("General_Data", "UserId"));
    tObj.getPostPasswordTextBox().sendKeys(dataTable.getData("General_Data", "Password"));
    tObj.getPostLoginButton().click();

    try {
        WebElement folderFrame = null;
        String[] postFolderName = dataTable.getData("General_Data", "PostReportFolderName").split(";");
        if (waitForElement(driver, By.id("acFileExplorer"), 4000)) {
            //System.out.println("test1");
            for (int folders = 0; folders < (postFolderName.length - 1); folders++) {
                driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
                folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
                driver.switchTo().frame(folderFrame);

                String dynaXpathFolder1 = "//a[contains(@href,'" + postFolderName[folders] + "')]";

                //if (waitForElement(driver, By.linkText(postFolderName[folders]), 1000)) 
                if (waitForElement(driver, By.xpath(dynaXpathFolder1), 1000)) {
                    driver.findElement(By.linkText(postFolderName[folders])).click();
                    driver.switchTo().defaultContent();
                } else {
                    report.updateTestLog("Post Report Folder Navigation",
                            "Post Report Folder Navigation" + folderFrame + "Has failed", Status.FAIL);
                }
            }

            driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
            folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
            driver.switchTo().frame(folderFrame);
            String postReportName = dataTable.getData("General_Data", "PostReportName");

            if (waitForElement(driver, By.linkText(postReportName), 1000)) {
                driver.findElement(By.linkText(postReportName)).click();
                driver.switchTo().defaultContent();
                driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
                folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
                driver.switchTo().frame(folderFrame);
                driver.switchTo().frame(driver.findElement(By.id("toolbarframe")));
                String no_Of_Pages = driver
                        .findElement(
                                By.xpath("//input[@name='editThis']/parent::td/following-sibling::td/font"))
                        .getText().trim();
                no_Of_Pages = no_Of_Pages.substring(3, no_Of_Pages.length());
                int no_OfPages = Integer.parseInt(no_Of_Pages);
                driver.switchTo().defaultContent();
                HashMap<Integer, ArrayList<String>> post_Page_TableData_1 = null;
                HashMap<Integer, ArrayList<String>> post_Page_TableData_2 = null;

                for (int i = 1; i <= no_OfPages; i++) {

                    driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
                    folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
                    driver.switchTo().frame(folderFrame);
                    driver.switchTo().frame(driver.findElement(By.id("reportframe")));

                    List<WebElement> no_Of_Rows = driver
                            .findElements(By.xpath("//body[@onunload='onUnload()']/div/div/div"));
                    String dynaXpath_1;
                    ArrayList<WebElement> column_Values_Elements_1 = new ArrayList<WebElement>();
                    ArrayList<WebElement> column_Values_Elements_2 = new ArrayList<WebElement>();
                    //ArrayList<String> column_Values=new ArrayList<>();
                    post_Page_TableData_1 = new HashMap<Integer, ArrayList<String>>();
                    post_Page_TableData_2 = new HashMap<Integer, ArrayList<String>>();
                    if (i < no_OfPages) {

                        for (int j = 2; j <= no_Of_Rows.size(); j++) {
                            if (j == no_Of_Rows.size() - 3) {
                                ArrayList<String> column_Values_dummy = new ArrayList<String>();
                                column_Values_dummy.add("ByPass");
                                post_Page_TableData_1.put(j, column_Values_dummy);
                            }

                            else {
                                dynaXpath_1 = "(//body[@onunload='onUnload()']/div/div/div)[" + j + "]/*/nobr";
                                ArrayList<String> column_Values_post_1 = new ArrayList<String>();
                                column_Values_Elements_1 = (ArrayList<WebElement>) driver
                                        .findElements(By.xpath(dynaXpath_1));
                                if (column_Values_Elements_1.size() > 0) {
                                    for (int k = 0; k < column_Values_Elements_1.size(); k++) {
                                        column_Values_post_1.add(k, column_Values_Elements_1.get(k).getText());
                                    }
                                }

                                post_Page_TableData_1.put(j, column_Values_post_1);
                                //column_Values.clear();
                            }
                        }
                        post_Pages_Data.put(i, post_Page_TableData_1);
                    }

                    if (i == no_OfPages) {
                        for (int j = 2; j <= no_Of_Rows.size() - 1; j++) {
                            dynaXpath_1 = "//body[@onunload='onUnload()']/div/div/div[" + j + "]/*/nobr";
                            ArrayList<String> column_Values_post_2 = new ArrayList<String>();
                            column_Values_Elements_2 = (ArrayList<WebElement>) driver
                                    .findElements(By.xpath(dynaXpath_1));
                            if (column_Values_Elements_2.size() > 0) {
                                for (int k = 0; k < column_Values_Elements_2.size(); k++) {
                                    column_Values_post_2.add(k, column_Values_Elements_2.get(k).getText());
                                }
                            }

                            post_Page_TableData_2.put(j, column_Values_post_2);
                            //column_Values.clear();

                        }
                        post_Pages_Data.put(i, post_Page_TableData_2);
                    }

                    if (i <= 3 || i > no_OfPages - 3) {
                        report.updateTestLog("Post Report " + postReportName, "Page No" + i, Status.PASS);
                        //System.out.println("Post Page data for page number: "+i+ "  is : " +post_Pages_Data.get(i));
                    }
                    driver.switchTo().defaultContent();
                    driver.switchTo().frame(driver.findElement(By.id("acFileExplorer")));
                    folderFrame = driver.findElement(By.xpath("//frame[@name='main']"));
                    driver.switchTo().frame(folderFrame);
                    driver.switchTo().frame(driver.findElement(By.id("toolbarframe")));

                    driver.findElement(By.linkText("Next")).click();
                    driver.switchTo().defaultContent();
                    waitForElement(driver, By.id("acFileExplorer"), 2000);

                }

                report.updateTestLog("Storing Data", "Data has been stored for Pre and post reports",
                        Status.PASS);
                System.out.println("Post Data is : " + post_Pages_Data);
                //compareHeaders();

                comparePreandPost(pre_reportData, post_Pages_Data);
            } else {
                report.updateTestLog("Post Report Navigation", "Not able to find Report Folder", Status.FAIL);
            }
        } else {
            report.updateTestLog("Post Report Folder Navigation",
                    "Not able to find Post Report Folder structure", Status.FAIL);
        }
    } catch (Exception e) {
        System.out.println("in post block");
        System.out.println("Exception is :" + e);
    }
}

From source file:ch.admin.isb.hermes5.common.AbstractPageDriver.java

License:Apache License

public WebElement findElementByLinkText(String linkText) {
    return findElement(By.linkText(linkText));
}

From source file:ch.hearc.arcgames.tests.AdminSecurityTest.java

@Test
public void nonAdminTryAccessAdminPages() throws Exception {

    // Non-admin user login informations
    String username = "nonAdmin";
    String passwd = "nonAdminPassword";

    // We open the web app
    driver.get(baseUrl + "/ArcGames/");

    // Login as non-admin
    login(username, passwd);/*from ww  w.ja va  2s  . c om*/

    // Try to access non-allowed admin pages
    for (String page : adminUrlList) {
        String adminUrl = baseUrl + page;
        driver.get(adminUrl);
        assertNotEquals(driver.getCurrentUrl(), adminUrl);
    }

    // Logout
    driver.findElement(By.linkText("logout")).click();

}

From source file:ch.hearc.arcgames.tests.AdminSecurityTest.java

@Test
public void adminAccessAdminPages() throws Exception {

    // Non-admin user login informations
    String username = "Admin";
    String passwd = "123456";

    // We open the web app
    driver.get(baseUrl + "/ArcGames/");

    // Login as admin
    login(username, passwd);//  w  w  w .  j  a v a2 s .  c  om

    // Try to access non-allowed admin pages
    for (String page : adminUrlList) {
        String adminUrl = baseUrl + page;
        driver.get(adminUrl);
        assertEquals(driver.getCurrentUrl(), adminUrl);
    }

    // Logout
    driver.findElement(By.linkText("logout")).click();

}

From source file:ch.hearc.arcgames.tests.AdminSecurityTest.java

private void login(String username, String passwd) {
    driver.findElement(By.linkText("Log in")).click();
    driver.findElement(By.id("j_idt19:login")).clear();
    driver.findElement(By.id("j_idt19:login")).sendKeys(username);
    driver.findElement(By.id("j_idt19:passwd")).clear();
    driver.findElement(By.id("j_idt19:passwd")).sendKeys(passwd);
    driver.findElement(By.id("j_idt19:submit")).click();
}