2010-09-02 144 views
3

有没有人有策略单元测试在Resharper heiarchies?resharper单元测试继承

我通常同时使用TestDriven.Net和Resharper的测试运行器以及NUnit测试。 TestDriven对于一切都很棒,但很快就发现一个批处理运行(可能是数千)的糟糕测试,这是Resharper的跑步者进来的地方。

我通常使用抽象基类的模式(如下面的代码)的测试用例被覆盖以获得正确的子类,这在TestDriven中很有用,但是Resharper只是忽略它们!我曾经想过,v5.0 Resharper使用的是NUnit的代码库,这意味着这应该可以工作,但它不会。

干杯,
Berryl

[TestFixture] 
public class AdminAccountTests : AccountTests 
{ 
    protected override Account _GetAccount() { return new AdminAccount(_idScheme, _description); } 
} 

[TestFixture] 
public class LeaveTimeAccountTests : AccountTests 
{ 
    protected override Account _GetAccount() { return new LeaveTimeAccount(_idScheme, _description); } 
} 

public abstract class AccountTests 
{ 
    protected abstract Account _GetAccount(); 

    [SetUp] 
    public void SetUp() 
    { 
     _account = _GetAccount(); 
    } 

    [Test] 
    public void OnCreation_Blah() { 
     Assert.That(_account.IdScheme, Is.EqualTo(_idScheme)); 
    } 

} 
+2

这是一个在5.1的夜晚版本中已经被修复了一段时间的问题。两天前我们发布了最新的5.1.1。请下载。 – 2010-09-03 05:29:45

+0

@哈迪。我还安装了最新的NUnit(2.5.7.10213),是的,生活又很好。干杯! – Berryl 2010-09-03 18:26:26

回答

0

让你的抽象类TestFixture。我在R#上做了同样的事情。

编辑:我只注意到R#(我使用5.1和NUnit 2.6)将标记类作为测试夹具,如果它有Test s在里面,无论子类或基类是否属于TestFixture。所以这可能无法解决你的问题。

+0

我确实尝试过,没有运气。感谢回复tho – Berryl 2010-09-02 18:42:06

+0

@RootBeer。看到哈迪的回应,听起来像他与Jet Brains一样,并且表明这是在最新的R#5.1.1版本中修复的问题。我还在安装最新的NUnit(2.5.7.10213)。我现在发布的代码现在在R#中执行。干杯! – Berryl 2010-09-03 18:29:16

+0

好听。感谢您的支票! – arootbeer 2010-09-03 18:51:27

1

我与使用resharper 5.1.3000.12的MbUnit和Gallio存在相同的问题。如果我尝试通过visual studio插件启动测试,则测试将被忽略。用外部的gallio测试跑步者,它工作得很好。

JetBrains ReSharper的详情5.1 C#版 构建5.1.3000.12上2011-01-28T05:05:56个

插件: 1.“公堂测试运行”的加利奥 的Visual Studio 9.0 v3.2.0.0。 30729.1。

版权所有©2003-2011 JetBrains s.r.o ..保留所有权利。