java窗口和消息提示框_Java或Javascript中的窗口对话框和弹出窗口处理

小编典典

我使用硒1,它可以很好地处理我的应用程序中的弹出窗口。

//Click on browse file button, open a popup

selenium.click("//input[@value='Browse...']");

//waiting for popup to load

selenium.waitForPopUp("_Dialog", "30000");

//selecting the popup by passing window name

selenium.selectWindow("name=_Dialog");

//click a link inside pop up window

selenium.click("link=something");

//Put other popup operations here

//click cancel button for pop up

selenium.click("cancel");

//back to main window

selenium.selectwindow("null")

要从警报框中获取消息,请使用selenium.getAlert();。这将以字符串形式返回包含在警报框中的消息。

另外,有时需要在切换到警报之前检查是否已发生警报。

int noofWindows = selenium.getAllWindowNames().length;

if (noofWindows > 1){

//selects the second window

selenium.selectWindow(selenium.getAllWindowIds()[2]);

//Prints the message in the alert window

System.out.println(selenium.getAlert());

}

如果不需要在IE中运行测试,请在执行代码之前使用firefox(* chrome)并关闭所有其他窗口。

我希望这可以帮助你。

*所有提及的代码均用于处理JavaScript弹出窗口。我不确定这是否适用于Vb脚本。

编辑

我认为IE下载弹出窗口是Windows事件,因此无法直接由Selenium处理,因此您必须使用Java AWT或AutoIT。

AutoIT脚本应该类似于

WinWaitActive(windowTitle)

ControlClick(windowTitle,"",buttonName)

并将其另存为IEsave.exe。注意:我没有尝试过此AutoIT脚本。

现在,您已从程序中执行IEsave.exe。我在这里使用Java。

java.lang.Runtime.getRuntime().exec("c:/IEsave.exe");

这将执行该文件,该文件将依次处理Windows的保存按钮事件。

您可以创建类似的exe文件来处理其他窗口的事件。

希望这能解决您的问题。

2020-11-23

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值