我有一个C#桌面应用程序(CompositUI/WinForms)。此应用程序使用SmartClient连接到Web服务。 我的任务是使用SpecFlow和White框架为此应用程序引入(改进)测试。为了测试GUI,我需要模拟web服务调用。连接到它的类正在通过Spring.net注入。 我的任务是测试应用程序能够在测试过程中模拟Web服务调用,这意味着我的测试代码需要控制我的模拟将执行的操作。 问题:启动GUI的方法根本不会将控制权返回给调用它的线程。结果,我们无法控制GUI和模拟。使用SpecFlow,White,Spring和MS Test来测试WinForms/CompositeUI GUI
所以问题我必须在这一点上是:
是可行的(如果是的话 - 如何做到这一点),在单独的线程启动GUI,并有控制回测试线程?
什么是运行GUI测试的其他可能性,这将使我能够控制注入?
这不回答这个问题。他不是在谈论单元测试演示逻辑,他实际上想要测试点击按钮并在文本框中输入。如何构建ui(mvvm,MVP,后面的代码)与那种测试无关。 – Andy 2014-06-18 12:55:23
也支持winforms,但它不会有重大变化。 Wpf将是构建新的桌面应用程序(这些不会消失)和Windows Store应用程序的xaml/winrt或win/js应用程序的首选方式。 – Andy 2014-06-18 12:59:43
@Andy修改回复澄清技术。 – 2014-08-04 12:12:46