Selenium关闭windows系统弹窗

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);
原文地址:https://www.cnblogs.com/chongyou/p/7065462.html