可以在浏览器的对话框窗口中模拟单击事件

本文关键字:模拟 单击 事件 窗口 对话框 浏览器 | 更新日期: 2023-09-27 17:56:09

我知道dialog(showMessage)是一个封闭的API,你不能用任何基于Web的技术(如jQuery或Javascript)强制在Dialog上发生点击事件。浏览器中窗口的实例是单线程的,并锁定线程,直到对话框收到事件。这一点我明白。

我正在尝试做的是为测试用例目的务实地模拟点击事件。我正在使用 Telerik 测试框架在 C# .NET 4.5 环境中运行这些测试用例。

那么是否可以模拟此点击事件?它正在测试我们的一个按钮的行为,单击该按钮时,用户必须确认他们离开页面而不保存更改。

提前感谢大家!

可以在浏览器的对话框窗口中模拟单击事件

我不熟悉 Telerik 的测试工具,但据我所知,"发出"这种点击的唯一方法是使用一个 UI 宏,该宏可以自动移动鼠标并实际单击特定位置的屏幕。

也就是说,您可以使用模拟方法解决问题。与其直接调用 window.prompt,不如按照以下方式定义自己的提示函数:

debug = true; //remove or set to false when not testing
var myPrompt = function(){
  if(debug){
    return "Greetings, Program";
  } else {
    return prompt("Please enter your greeting:","Greeting");
  }
}

您可以自然地为其他类型的消息框设置此设置,只要您牢记它们返回的类型即可。