2

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

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

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

提前感谢大家!

4

1 回答 1

0

我不熟悉 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");
  }
}

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

于 2013-07-18T17:15:20.090 回答