freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

畢業(yè)論文基于selenium框架的web自動化測試系統(tǒng)的設計與實現(xiàn)-資料下載頁

2024-10-07 22:40本頁面

【導讀】此處為論文中文題目,閱后刪除此文本框。除了文中特別加以標注和致謝的地方外,論文中不包含其他人已。經發(fā)表或撰寫的研究成果。公布全部內容,可以采用影印、縮印或其他復制手段保存論文。視,使得軟件測試技術逐漸成為人們關注的焦點。在此以Web系統(tǒng)軟件為例,傳統(tǒng)的軟。試工具的使用極大地提高了測試的效率。本系統(tǒng)包含日志管理模塊、頁面對象模塊、測。列功能,在規(guī)范測試流程、提高測試效率、測試覆蓋率方面具有一定的現(xiàn)實意義。

  

【正文】 cess(String processName) { String rcIp = 。 int rcPort = ((remotePcPort))。 String rcUser = (remotePcUser)。 String rcPassWord = (remotePcPsw)。 TelConnection conn =new TelConnection(rcIp, rcPort, rcUser, rcPassWord)。 if((tasklist /v).contains(processName)){ ((檢測到遠程客戶端進程 + processName + 已經開啟! ))。 ()。 return true。 } return false。 浙江財經大學本科生畢業(yè)論文(設計 ) 25 } 通過遠程控制,可以提前將本系統(tǒng)部署到遠程服務器上,在服務器上運行,本地可以繼續(xù)做其他工作,有 助于加快開發(fā)進度。 屏幕截圖管理模塊 主要是用于記錄測試過程中出現(xiàn)的 bug 進行拍照記錄。類似于現(xiàn)場恢復,很多在開發(fā)中遇到的 bug 都是偶發(fā)性的,不易于捕捉,有了截圖模塊使測試工作變的簡單了許多。 主要實現(xiàn)代碼如下所示: public void takeScreenShot(WebDriver driver, String name) { String path = (8,(.))。 path = + + (\\., \\+)。 String methodName = ((.)+1)。 try { if(local.equals(())) { File scrFile ((TakesScreenshot)driver).getScreenshotAs()。 (scrFile, new File(pictures + + path + + methodName + ().replaceAll(:, ) + .png))。 }else if(windows.equals(())){ WebDriver augmentedDriver = new Augmenter().augment(driver)。 File scrFile =((TakesScreenshot)augmentedDriver). getScreenshotAs()。 (scrFile, new File(.. + + pictures + + path + + methodName + ().replaceAll(:, ) + .png))。 }} catch (IOException e) { ((methodName, e), e)。 ()。 } } 當測試過程中出現(xiàn)問題時,該模塊負責把當時操作的頁面截圖進行保存并且以當前測試用例名(如 ancTen_One20200511 ,表示是測試用例 ancTen 的第一個方法在 5 月四號運行時截的圖)。如圖 75 所示。 浙江財經大學本科生畢業(yè)論文(設計 ) 26 圖 75 屏幕 截圖 測試驅動模塊 主要用于 編寫使測試通過的功能代碼,通過測試來推動整個開發(fā)的進行 ,是自動化測試框架的核心,其決定整個自動化腳本設計。 以下是部分內容展示: (1)鼠標點擊事件的實現(xiàn) @Override public void clickWaitByMouse(WebDriver driver, final By by, int outTime) { final WebElement element = (driver, by, outTime)。//等待頁面元 try { (1000)。 } catch (InterruptedException e) { // TODO Autogenerated catch block String methodName = new Throwable().getStackTrace()[0].getMethodName()。 ((methodName, e), e)。 ()。 } WebDriverWait wait = new WebDriverWait(driver,outTime)。 new Actions(driver).moveToElement((new ExpectedCondition WebElement(){ 浙江財經大學本科生畢業(yè)論文(設計 ) 27 @Override public WebElement apply(WebDriver dr) { return element。 }})).click().perform()。 } (2)關閉某個 alert 框的實現(xiàn) @Override public void closeConfirmAlert(WebDriver driver,int outTime) { Alert alert = (driver, outTime)。//等待對話框出現(xiàn) ()。 } (3)判斷某個元素是否存在的實現(xiàn) @Override public boolean isElementsExsit(WebDriver driver, ListBy list , int outTime) { boolean flag = false。 try { //遍歷元素列表檢查是否已加載 for (By by : list) { WebElement element = (driver, by, outTime)。 flag=null!=element。 } } catch (WebDriverException e) { flag = false。 (未檢查到元素: + e)。 return flag。 } return flag。 } 在本系統(tǒng)中,這一模塊主要是將 selenium Webdriver 底層的方法進行再次封裝,已達到本系統(tǒng)所需要的方式去處理實際的測試問題,并達到了很好的效果。 “ ATS 底層開發(fā)”需要不斷的技術積累,以及分階段、分層程度地不斷完善和實現(xiàn)?!肮差悗扉_發(fā)”需要在腳本開發(fā)過程中不斷地積累,不斷地提煉?!澳_本層開發(fā)”往往是最費精力、 投入時間最多、最復雜也最容易出問題。因為本人需要對測試用例充分地理解之后再結合頁面上的信息展現(xiàn),需要進行大量的邏輯分析、編寫各種算法、 java浙江財經大學本科生畢業(yè)論文(設計 ) 28 正則表達式的大量運用、重復地針對某一塊測試用例再結合詳細的日志進行運行調試,分析日志準確性等等,并非復制黏貼代碼然后稍微改改就可以簡單實現(xiàn)。為了便于運行與調試,每一個測試用例都被組合成一個測試套件,測試套件再組合成某一個完整的功能模塊的測試套件組合,最后被控制端調用執(zhí)行。 浙江財經大學本科生畢業(yè)論文(設計 ) 29 8 系統(tǒng)總體運行 以上章節(jié)已經對本系統(tǒng)的模塊設計有了較全面的闡述,而系統(tǒng)完成之后若手動的一個一 個的去啟動測試用例,顯然采用這種方式并不人性化,因此我們需要一個測試用例的總入口即啟動類,通過它可以將配置好的測試用例一次進行測試,以系統(tǒng)的檢測當前被測系統(tǒng)目前存在的一切 bug。代碼如下: public class StartAts { private static Logger logger = ()。 private static String pathString = 。 public StartAts() { (pathString)。 } public static void main(String[] args) { String testNGxmlName = args[0]。 if(linux.equals(())) { = args[1]。 //設置啟動日志目錄 (pathString)。 (Linux 環(huán)境下,連接 tel,檢測客戶端上的 Rc 服務 是否啟動。 )。 (要連接客戶端的 ip + )。 }else { //設置啟動日志目錄 (pathString)。 } //加載配置 loadConfigure()。 TestNG tng = new TestNG()。 //監(jiān)聽測試服務的開 始和結束 MyTestListenerAdapter listener = new MyTestListenerAdapter()。 (listener)。 ListString suites = ()。 Logger logger = ()。 if(linux.equals(())) { (準備關閉 Rc 客戶端 ,同時自動初始化客戶端環(huán)境,結 浙江財經大學本科生畢業(yè)論文(設計 ) 30 束遠程客戶端所有 進程 )。 ()。 String[] parameters = {(), ()}。 if(().equalsIgnoreCase( winXP)) { (ToolsConstant. STARTCLIENT_BAT, parameters)。 }else if( ().equalsIgnoreCase(win7)){ //Win 7 下啟動之后,窗口自動最小化 ( NT_VBS, parameters)。 } ( * 1000)。 (開啟遠程客戶端 服務! )。 (.. + + reports + + + )。 (設置測試報告路徑: + .. + + reports + + + )。 }else { //設置測試報告路徑 (reports + + + )。 } (************測試腳本動態(tài)尋找 啟動! ************ + testNGxmlName)。 if(local.equals(())) { (./AutomaticTestServer/, testNGxmlName)。 }else if(windows.equals(())){ (../AutomaticTestServer/, testNGxmlName)。 }else if(linux.equals(())) { (../AutomaticTestServer/, testNGxmlName)。 } if(()){ 浙江財經大學本科生畢業(yè)論文(設計 ) 31 (未找到測試任務文件 : + testNGxmlName)。 return。 } (************測試腳本動態(tài)尋找 完畢! ************ + )。 (************腳本加載初始化 啟動! ************)。 ()。 (************腳本加載初始化 完畢! ************)。 (************測試套件初始化 啟動! ************)。 (suites)。 (************測試套件初始化 完畢! ************)。 //測試啟動 ()。 } public static void loadConfigure(){ (************讀取 ATS 配置文件 啟動! ************)。 getATSConfigProperties()。 (************讀取 ATS 配置文件 完畢! ************)。 (************加載日志配置模塊 啟動! ************)。 String logConfigFile = 。 if(local
點擊復制文檔內容
畢業(yè)設計相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1