2011-07-19 171 views
1

所以我正在寻找使用Selenium之类的框架将Web应用程序测试带入我们的.Net环境。起初,它可能是开发人员编写测试,但后来可能只是QA团队。我想知道测试应该在哪里居住。他们是否应该生活在Web应用程序所在的同一解决方案中,还是应该生活在完全独立的解决方案中?请注意,这些回归测试将通过自动化Web浏览器完成,因此不需要访问Web应用程序的程序集。答案可能是基于环境和其他因素,但我很好奇其他人在这种情况下做了什么。Web应用程序测试框架的组织和结构

回答

0

回归测试包括单元测试和功能测试。功能测试通过各种输入来执行完整的程序。单元测试可以执行单独的函数,子例程或对象方法。

单元测试是解决方案代码的一部分,应该像Microsoft MVC一样使用主代码。由于功能测试检查整个系统而不仅仅是组件,它们可以在任何地方生活。但是,由于您的功能测试是自动化脚本,它们应该包含在解决方案中。

将功能和单元测试与代码一起存在的好处是项目管理问题。将所有与项目相关的文件放在一个存储库中,将代码版本与测试版本链接起测试脚本需要像任何其他项目代码一样存储在存储库(版本控制系统)中,因此最好将它们保存在解决方案中。

这样,测试团队可以像开发人员一样检查解决方案,从而进行白盒测试(测试访问代码)。他们的工作可以在Visual Studio中保存,共享和记录。微软甚至在Team Foundation Server中包含一些基于Web的管理工具,可用于在测试团队和开发人员之间开放式沟通的情况下管理测试。

+0

谢谢托德。功能测试正是我想描述的。单元和集成测试肯定会与实际项目一起生活。我同意项目管理绝对是在项目本身进行功能测试的专业人员。我可以看到,将他们放在单独的解决方案中的唯一优点是,如果您想阻止您的QA团队访问实际的代码,那么确保他们只进行黑盒测试。 – Darren

+0

将黑白盒测试结合在一起时,您可以在查找缺陷时获得20%的增益。 –