我们是一家拥有影响深远的 MSDN 许可证的 MSFT 商店。
经过多年做错事,我们终于要开始做自动化测试了。我的小组是豚鼠。我们需要创造以前没有的东西。我们查看了那里的众多选择。有些人使用开源替代品(例如CC.Net
, Bamboo
,MbUnit
等)过得很好。我们想给MsTest
, CodedUI
,Team Build
一个很好的尝试……也可能因为 MSDN 许可和 MSFT 关注。
以 MSFT 方式做事的优点和缺点在于,MSFT 做的是单一的事情。您必须安装各种可以很好地相互配合的工具,但与局外人 - 不一定。好处是,当事情做得正确时,它应该会运行得相当顺利。可以选择门控签到、使用 TFS 存储报告等。
坦率地说,我对所有选项感到困惑。我们的传统构建系统是与一堆 perl、批处理脚本、可执行文件一起被破解的,但现在构建团队切换到 Team Build,它应该更干净,但在大多数情况下,它只是对相同的旧 perl 垃圾的包装.
我也倾向于将东西拼凑在一起进行测试,因为我至少可以看到这些部分是什么。因此,我将穷人的版本设想为: * 一台运行测试的专用快速计算机 * 一些脚本将构建文件(测试代码和产品代码)复制到该计算机。* 一个批处理/perl 脚本,它将从命令行运行 mstest.exe 并在某些测试 dll 中的某些按类别过滤器上执行一些测试批处理(产品非常庞大,我们确实希望按各种类别组织测试)。* 一些脚本将使用 psexec.exe (http://technet.microsoft.com/en-us/sysinternals/bb897553) 从构建服务器远程调用后一个脚本,以及从共享驱动器获取 xml 输出,然后向有兴趣的人发送一封包含结果的电子邮件。
这可能可行,但我不得不担心错误处理如何处理这么多潜在的故障点。以“正确的方式”配置东西会很好,利用 MSFT 已经制作的任何东西。我只是不确定在哪里可以找到一个好的指南。你做过这样的事情吗?
最终,如果我们用完了分配的时间,我们将希望拥有一个测试计算机场。其他值得关注的事情是 - 为了使编码的 ui 测试成功,我认为用户必须登录,所以我不确定 psexec 是否会在这里有很大帮助。
你能分享你的正面/负面经历吗,也许给我一个好的指南?谢谢!