Selenium關閉windows系統彈窗
背景:在使用某業務時,會彈出windows框 提示要打印某個文本,效果如下,而正常腳本執行完了后,關閉了driver,windows的彈框還是不會消失,這時需要做善后工作,關掉window彈框:
用到的工具是autoit的工具,因為目前selenium能解決windows彈框的就只有autoITt工具,可實現上傳,也可操作windows彈框
1.先捕獲需要關閉的窗口

使用工具定位下,我的目的是只要點擊取消按鈕就成功了,操作與上傳附件相同,現在拖動那個像光盤的東西,到需要定位的按鈕上

2.編寫腳本,因為我現在的情況點擊取消了之后,還會在彈一個相同的框,所以加了延時
腳本中需要用到兩個東西,一個是title,一個是classnameNN,就是下面這兩個內容


ControlClick("打印成PDF文件 - 福昕PDF打印機", "","Button3"); Sleep(4000) ControlClick("打印成PDF文件 - 福昕PDF打印機", "","Button3");
3.運行腳本,沒問題,編譯成exe文件,寫入到項目中
在頂部工具欄上tool上按GO,或者F5,運行,可以直接把我的彈框給關閉掉,說明定位成功,可以生成exe了,使用這個工具

4.Java項目中引用方式為
生成exe后,在項目driver關閉后,執行為,
omscloseServer.exe就是我編譯后的exe,前面一大堆就是為了獲取項目名稱
String fileUrl=new File("").getAbsolutePath()+"\\resources\\omscloseServer.exe"; Log.logInfo("調用的exe的地址路徑為:"+fileUrl); Runtime.getRuntime().exec(fileUrl);
