如何在c#中验证消息框弹出?我正在编写一些测试并尝试验证是否弹出某些系统消息框。例如http://www.dotnetperls.com/messagebox-show。但是,MessageBox类用于创建消息框。我如何捕获和验证系统生成的系统并对其进行操作?示例:操作是:1.单击某个执行文件。2.验证弹出的警告消息框3.单击消息框上的是/否有什么提示吗?一种选择是使用白色自动化框架。例如:WindowmessageBox=WindowFactory.Desktop.DesktopWindows().Find(w=>w.Title.Contains("MessageBoxTitle"));按钮确定=messageBox.Get(SearchCriteria.ByText("确定"));ok.点击();+1为白框!!您可以查看我发布的关于断言消息框并使用messageBox.Get()方法单击“确定”按钮的答案。参考:https://stackoverflow.com/a/35219222/2902212window.MessageBox()是一个很好的解决方案,但是如果没有出现消息框,这种方法会停留很长时间。有时我想检查消息框的“未出现”(警告、错误等)。所以我写了一个方法来通过线程设置timeOut。以上就是C#学习教程:如何在c#中验证弹出的消息框?所有分享的内容,如果对你有用,需要了解更多C#学习教程,希望大家多多关注——[TestMethod]publicvoidTestMethod(){//arrangevarapp=Application.Launch(@"c:应用程序路径.exe");vartargetWindow=app.GetWindow("Window1");按钮button=targetWindow.Get("按钮");//行为button.Click();varactual=GetMessageBox(targetWindow,"应用程序错误",1000L);//断言Assert.IsNotNull(actual);//我想看到消息框出现。//断言.IsNull(实际);//我不想看到消息框出现。}privatevoidGetMessageBox(WindowtargetWindow,stringtitle,longtimeOutInMillisecond){Windowwindow=null;Threadt=newThread(delegate(){window=targetWindow.MessageBox(title);});t.开始();longl=CurrentTimeMillis();while(CurrentTimeMillis()-l本文采集自网络,不代表立场,如涉及侵权,请点击右侧联系管理员删除,如需转载请注明出处:
