我继承了一个应用程序,并想在其周围构建自动化测试套件。该应用程序没有考虑可测试性,代码是一个"大泥球"。我的计划是使用UI自动化测试框架,并创建一组UI级别的测试,直到我有足够的覆盖范围,使我能够有信心开始重构,并引入一些接缝以提高可测试性和设计。
这是一个.Net WinForms应用程序,我知道的两个框架是:
以及
从我所读的内容来看,由于大多数CI产品作为Windows服务运行,如果UI使用模态对话框,这两个框架都会面临运行为自动化构建(持续集成)的问题,应用程序将会崩溃。我使用CruiseControl.Net作为我的CI工具。
有人有任何建议来解决这个问题吗?是否有其他可用的框架可以使情况更好?
谢谢,
Dylan