我的问题集中在如果我的设置目前正在遵循有关使用UI验证测试的BDD的最佳实践方法。我使用WatiN和SpecFlow来构建我的UI验收测试,并将我的应用程序部署到AppHarbor(一个云平台作为.NET应用程序的服务)。 AppHarbor在部署时运行您的单元/集成测试,并且只有在您的测试通过时才会将您的网站推向市场。于是,我开始通过写一个基本失败的测试如下:使用WatiN和SpecFlow的UI组件的BDD
Scenario: Navigation to homepage
When I navigate to/
Then I should be on the application homepage
与这个测试相关的步骤,使用华廷打开浏览器并验证视图的标题属性设置为“欢迎”。我正在检查环境,以决定使用WatiN浏览器测试哪些URL。例如,如果在开发中导航到“http:// localhost:49641 /”家。否则,请导航至“http://myappharborapp.com/”。
我的问题是,如果您是第一次部署此应用程序,页面或视图实际上不存在,因此测试失败(因为该网站还没有生效)。这也会失败,例如我以后会添加一个“关于”页面视图并首先编写一个失败的测试。当我推送更新时,测试将失败,因为“关于”页面尚不存在。
那么我的问题是:我没有遵循关于如何设置UI测试的最佳实践?应该如何设置这些测试以便它们在任何环境中通过?
任何洞察力非常感谢!
感谢您的回复布鲁斯。我会给这个实现一个镜头,看起来它应该为我的目的工作。 – AngelCabo 2011-02-03 15:31:07