我读过一次又一次,双工/测试第一是更加困难MSTest于它是与其他测试框架,例如关,MBUnit,等等。什么是一些建议的手册的解决方法和/或第3次方位,你建议的时候MSTest是唯一的选择,由于基础设施的政策?我主要想知道有关VS2008队套,但我想提示VS2008亲关起来将是合适的也由于一些MSTest功能是现在包括这些版本。

有帮助吗?

解决方案

MSTest肯定是效率不高或可扩展的一些开放源框架,但这是可行的。由于该问题的询问关于使生活更容易与MSTest而不是对替代品,这里是我的MSTest技巧。

  • 快捷方式.像Haacked说,需要几秒钟的时间来学习的快捷方式。
  • 目前上下文.由于MSTest是如此缓慢,运行测试只有在目前情况下时,你可以。(CTRL+R, CTRL+T).如果你的光标是在测试方法,这只会运行的方法。如果你的光标以外的一种方法,但是在测试类,这只会运行测试。和名字空间,等等等等
  • 有效的测试和组织.这是狗慢。让事情尽可通过编写有效的测试。移动缓慢测试的其他测试的课程或项目所以你可以跑的快速测试的频率更高。
  • 测试与WCF.如果你测试服务,一定要试试验而不是在运行测试那些工作室可以ASP.NET 发展网络服务器。之后,这些都是,然后你就可以回来运行,但它可以更容易只是试所以你不需要去想它。
  • 配置文件.编辑试运行配置的移动。配置文件到测试的执行文件夹。
  • 一体化与源安全.你需要知道,MSTest恨章和这种感觉是相互的。因为MSTest希望把测试文件根源的控制,并将其添加到解决,它必须检查该方案的每一次运行测试。因此章必须运行在多检查出模式,以避免杀害你的家伙开发。
  • 忽略的绒毛 与MSTest,你会得到一个十几个不同窗户和意见。测试运行、测试看,试验列出了...他们都不太有帮助的。坚持与检验结果,你会更幸福。
  • 坚持与"单元的测试".当你加入一个新的试验,可以添加一个有序的试验、单元测试,或通过一个向导。坚持只是简简单单元的测试。

其他提示

如果你没有选择,只能使用MSTest,学习键盘的快捷方式。他们会让你的生活更容易一些。

测试在目前上下文: CTRL+R, T
所有测试解决方案: CTRL+R, 一个

调试测试在目前上下文: CTRL+R, CTRL+T
调试,所有测试解决方案: CTRL+R, CTRL+一个

我很好奇这里。我不明白的是,人们开始比较所有的开放源工具可供与MSTest,并开始抨击它。在谈到如何笨重的是,如何unintiuitve等。恕我直言,这是因为它根本不同来完成框架。这是优化对于平行的执行。

甚至qurik的具有静态ClassInitialze和清理和具有独特的TestContext对每个试验,因为所有的新一代--至少对于Windows的业务程序员在MS语言平行progarmming的概念。

我有不幸的工作在一个项目中有数以万计的单元的测试。他们用几乎大多数建立的时间!与MSTest,我们割下来非常可管理的时间表。

我的同事麦克哈德罗有很好的摘要,为什么我们完全不愿意MSTest 在这里,.

他设法消除它从他的项目,但我目前正在一个更大的项目有更多的政治参与,所以我们仍然在使用它。

其结果是,谁实施MSTest不了解影响。我很抱歉听起来像一个万美元basher-我真的不。但我惹恼了,我放了一个非常贫穷的工具。

我还没有看到任何严重问题MSTest.什么,具体而言,你在说什么?我们,事实上,从关于MSTest.我不知道我们的原因,虽然。

有很多的配置文件mstest,使其不方便.
另一个原因,我选择了mbunit,是"回滚"的特征mbunit.这可以让你回退的所有数据库的东西做这个测试,所以实际上你可以做完整的电路测试,而不用担心池塘被污染的后的测试。
还缺乏RowTest设施mstest.

我建议刚刚运行mbunit作为一个依赖内部建立的过程,它很容易只是浮它与库,并参考,没有安装必需的。

  • MSTest具有"高摩擦":得到 一个建立脚本NAant和MbUnit 相比MStest和MSBuild。没有 比较。
  • MSTest是缓慢的MbUnit 并关在我的经验更快 (迦流可以帮助这里的)
  • MStest增加了一个 堆东西我不需要喜欢 有线配置文件等。
  • MSTest没有fetaure设置的其他操作系统的测试框架。检查出来完成和MbUnit

这太难以使用和有许多更好的选择。

如所提到的奥需要安装完整IDE为了使用MSTest在另一台机器,这是一个有点烂我想这是因为他们想要确保单元的测试仅适用于高端些工作室和你sholdné能运行它们在任何其他方式。

此外,MSTest是相当缓慢,这是因为插图中的每一个测试它重建整个上下文对每个试验,这使得o0ne确保一个前试验失败或无doen不影响目前的试验,但放慢下来的东西。但是你可以使用/noisolation标志,这将运行的所有测试内MSTest进程-其速度更快。为加速在IDE:在VS ide你可以去工具的选择然后选择测试工具。选择一分项目被称为测试的执行和在台词的权利,确保检查框称为'保持执行的测试发动机的运行之间的测试运行'检查。

回答一个非指的问题,我的答案将会是 "可能呢只是停留出你的脸。"

免责声明:我已经没有实际的经验MS版来完成,但是我听到的问题就像你需要安装巨大的想法只是运行测试在一个单独的机器'-这是一个完全没有-没有。除MS有这种扭曲正确的道路对一个新手通过某种IDE贝尔/吹口哨,违反整个的想法。像生成测试的课程之一,我还记得一年或一年以后..失败的整个点的 试驾 -你的设计应该是来自微小的步骤的相对增重率:写一个试验使它传递重构。如果使用这一工具-它夺走了你的整个经验。

我会停止我的布道..现在:)

我已经做了TDD发展采用关于多年,并已经使用MSTest约4个月,现在由于一个角色的变化。

我不认为MSTest停止有人从这样做影响。你仍然有的所有核心的东西你需要双例如基本的断言和模拟框架(I使用犀牛嘲笑).

MSTest并将密切与Visual Studio,最好的组成部分,这一体化是复盖代码的工具,是建立。

但 有一些令人信服的理由 使用MSTest.两个最大的转账,在我的意见是:

  1. 缺乏维护选项(相比呢)
  2. 呆滞的测试运(缓慢相比呢)

这意味着,编写声称需要更多的代码组合有一个缓慢的测试运意味着,整个过程是缓慢的比呢?开放源的选择还有很多更多的支持,在社区。

如果您使用的是TFS CI,然后你会需要跳过一些圈/黑客,以获得关于公布测试结果。运行测试TFS MSTest在比较是非常简单和直接的。如果你不碰TFS比,我会去关的所有方式,它只是漂亮。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top