C# 在VisualStudio下使用组合属性时,NUnit速度非常慢

C# 在VisualStudio下使用组合属性时,NUnit速度非常慢,c#,visual-studio-2013,nunit,resharper-8.0,C#,Visual Studio 2013,Nunit,Resharper 8.0,我的设置是NUnit(最新版本,2.6.左右),VS13带有R#8和Win7。我非常惊讶地注意到,当我使用属性组合时,IDE变得极其缓慢。我们说的是在每次击键后在VS的灰色窗口等待几秒钟 我在谷歌上搜索过,但似乎没有任何相关的点击。我怀疑是我们的本地设置造成的(为什么不能安装NUnit和R#?!),但其他人可能会感兴趣,知道发生这种情况时该怎么办 我们注意到,随着测试用例数量的增加,延迟呈指数增长。这是其中一种方法的示例 [Test] [Combinatorial] public void Ad

我的设置是NUnit(最新版本,2.6.左右),VS13带有R#8和Win7。我非常惊讶地注意到,当我使用属性组合时,IDE变得极其缓慢。我们说的是在每次击键后在VS的灰色窗口等待几秒钟

我在谷歌上搜索过,但似乎没有任何相关的点击。我怀疑是我们的本地设置造成的(为什么不能安装NUnit和R#?!),但其他人可能会感兴趣,知道发生这种情况时该怎么办

我们注意到,随着测试用例数量的增加,延迟呈指数增长。这是其中一种方法的示例

[Test]
[Combinatorial]
public void AddWaveformTest(
  [Values(null, "", "sec", "stringThatMayBulky")] string s1,
  [Values(null, "", "sec", "stringThatMayBulky")] string s1,
  [Values(null, "", "sec", "stringThatMayBulky")] string s3,
  [Values(null, "", "sec", "stringThatMayBulky")] string s4,
  [Values(int.MinValue, int.MaxValue, -1, 0, 1)] int i1,
  [Values(null, "", "sec", "stringThatMayBulky")] string s5,
  [Values(null, "", "sec", "stringThatMayBulky")] string s6,
  [Values(null, "", "sec", "stringThatMayBulky")] string s7,
  [Values(null, "", "sec", "stringThatMayBulky")] string s8,
  [Values(int.MinValue, int.MaxValue, -1, 0, 1)] int i2)
{
  ...
}
这一数字略高于2600万次操作,这可能是一个很大的数字,但从计算机的角度来看,情况应该不会那么糟。对吗?我还注意到,直接原因不是组合属性,而是值属性。当我对后者进行注释时,内容再次工作,而对前者进行注释不会带来任何改进…

您可能需要检查一下,因为resharper在8.x版本中可能有一个bug,导致编辑窗口在每次击键后需要一些时间才能响应

在对问题的评论中搁置的一些领域是:

  • 安装和拆卸成本高昂:这一想法与第二点不谋而合->
  • Resharper内部存在某种类型的连续测试(比如ncrunch功能或approching),但OP认为不太可能

请不要犹豫,来评论这个问题,我对此很好奇(顺便说一句,编辑器窗口不可用的时间是否与您的测试持续时间大致匹配?

只是想一想,但您是否有一些夹具设置和拆卸,可能会影响您的性能?@samy是的,我有设置和拆卸。然而,让我大吃一惊的事实是,每次击键后,我打字时都会出现速度减慢的现象——真的!感觉就像VS在键盘上的每次点击都会在背景中重新编译一些东西。这怎么可能?!那么如何解决这个问题呢?你没有像ncrunch这样的工具,也没有实时测试集成设置吗?@samy,这是一个很好的猜测。然而,我认为情况并非如此。至少我没有故意安装过这样的东西。我刚刚安装了VS13、R#8和NUnit2.6。除非它是自动添加和启动的,否则我的机器上没有类似的东西……康拉德,我认为在R#8中可能集成了一些连续测试,目前这两个问题实际上有点相同。不过,我不确定这是否有什么意义。无论如何,我会在周一的工作中调查此事+1用于持久性和暗示。:)