使用Selenium自动化测试SAP CRM WebClient UI 自动化测试seleniumCRMWebClient UIABAP
程序员文章站
2022-03-08 12:22:39
...
package com.xc.crm.test; import static org.junit.Assert.*; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.openqa.selenium.By; import org.openqa.selenium.NoSuchElementException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.ie.InternetExplorerDriver; import org.openqa.selenium.remote.DesiredCapabilities; import org.openqa.selenium.support.ui.ExpectedCondition; import org.openqa.selenium.support.ui.WebDriverWait; public class CRMTest { private WebDriver myDriver; private String crmURL; private String mainWindowHandle; private String popupWindowHandle; @Before public void setUp() throws Exception { // System.setProperty("webdriver.ie.driver","C:\\xiechuan\\30_Software\\02_Selenium\\IEDriverServer_x64_2.26.2\\IEDriverServer.exe"); // DesiredCapabilities ieCapabilities = DesiredCapabilities.internetExplorer(); // ieCapabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true); // myDriver = new InternetExplorerDriver(ieCapabilities); myDriver = new FirefoxDriver(); crmURL = "https://ldcijerry.corp:44354/sap/bc/bsp/sap/crm_ui_start/default.htm"; } @After public void tearDown() throws Exception { } @Test public void test() throws InterruptedException { System.out.println("--- Test Start ---"); // This is for initial the tab in browser // myDriver.navigate().to("http://www.soso.com/"); // Thread.sleep(5000); myDriver.navigate().to(crmURL); System.out.println("In Testing: Open CRM Logon page"); Thread.sleep(15000); myDriver.findElement(By.id("sap-user")).clear(); myDriver.findElement(By.id("sap-password")).clear(); myDriver.findElement(By.id("sap-user")).sendKeys("XIE"); myDriver.findElement(By.id("sap-password")).sendKeys("Xc12"); myDriver.findElement(By.cssSelector("span.urBtnCntTxt")).click(); System.out.println("In Testing: Logon on CRM"); Thread.sleep(15000); myDriver.findElement(By.id("SERVICEPRO")).click(); System.out.println("In Testing: Click Service Professional"); Thread.sleep(30000); myDriver.switchTo().frame("CRMApplicationFrame"); Thread.sleep(10000); myDriver.switchTo().frame("WorkAreaFrame1"); Thread.sleep(10000); System.out.println("In Testing: Switched to CRMApplicationFrame-WorkAreaFrame1"); // Create service order // AG3 // myDriver.findElement(By.id("C5_W18_V19_SRV-ORD-DC")).click(); // QD3 myDriver.findElement(By.id("C5_W19_V20_SRV-ORD-DC")).click(); System.out.println("In Testing: Click to create Service Order"); Thread.sleep(20000); // AG3 // myDriver.findElement(By.id("C31_W109_V112_V113_btrefobjmain_struct.ib_ibase-btn")).click(); // QD3 myDriver.findElement(By.id("C32_W114_V117_V118_btrefobjmain_struct.ib_ibase-btn")).click(); System.out.println("In Testing: Click value help to search IBase"); mainWindowHandle = myDriver.getWindowHandle(); System.out.println("In Testing: " + "Main Window: " + mainWindowHandle + " / " + myDriver.getTitle()); Thread.sleep(10000); for (String myHandle : myDriver.getWindowHandles()) { System.out.println("In Testing: " + "Current Handle: " + myHandle); if(!myHandle.equals(mainWindowHandle)) { popupWindowHandle = myHandle; myDriver.switchTo().window(popupWindowHandle); System.out.println("In Testing: " + "Popup Window: " + myDriver.getWindowHandle() + " / " + myDriver.getTitle()); break; } } myDriver.switchTo().frame("WorkAreaFrame1"); System.out.println("In Testing: Switched to pop-up WorkAreaFrame1"); Thread.sleep(20000); // Enter IBase ID // AG3 // myDriver.findElement(By.id("C36_W133_V135_V136_V141_search_parameters[1].VALUE1")).clear(); // myDriver.findElement(By.id("C36_W133_V135_V136_V141_search_parameters[1].VALUE1")).sendKeys("4448"); // QD3 myDriver.findElement(By.id("C37_W137_V139_V140_V145_search_parameters[1].VALUE1")).clear(); myDriver.findElement(By.id("C37_W137_V139_V140_V145_search_parameters[1].VALUE1")).sendKeys("12"); System.out.println("In Testing: Pop-up search parameter entered"); // Click search button // AG3 // myDriver.findElement(By.id("C36_W133_V135_Searchbtn")).click(); // QD3 myDriver.findElement(By.id("C37_W137_V139_Searchbtn")).click(); System.out.println("In Testing: Click search button in Pop-up window"); Thread.sleep(10000); // Select the row in search result // AG3 // myDriver.findElement(By.id("C36_W133_V135_V137_Table_sel_1-rowsel")).click(); // QD3 myDriver.findElement(By.id("C37_W137_V139_V141_Table_sel_1-rowsel")).click(); System.out.println("In Testing: Select search result in Pop-up window"); Thread.sleep(10000); System.out.println("--- Test End ---"); } }