пересчет юнит-тестов наследования - PullRequest
3 голосов
/ 02 сентября 2010

Кто-нибудь получил стратегию для юиархии модульного тестирования в Resharper?

Обычно я использую как TestDriven.Net, так и Resharper, с тестами NUnit.TestDriven хорош для всего, но быстро находит плохой тест из пакетного запуска (который может быть тысячами), в который входит бегун Resharper.

Обычно я использую шаблон с абстрактным базовым классом (например,приведенный ниже код) тестовых случаев, переопределенных для получения правильного подкласса, который прекрасно работает в TestDriven, но Resharper просто игнорирует их!Я думал, что начиная с версии 5.0 Resharper использует базу кода NUnit, что означает, что это должно работать, но это не так.

Cheers,
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 ]

1 голос
/ 27 апреля 2011

У меня такая же проблема с MbUnit и Gallio с resharper 5.1.3000.12. Если я пытаюсь запустить тест через плагин visual studio, тест игнорируется. С внешним gallio test runner он работает нормально.

JetBrains ReSharper 5.1 C # Edition Сборка 5.1.3000.12 2011-01-28T05: 05: 56

Плагины: 1. «Gallio Test Runner» v3.2.0.0 от Gallio Visual Studio 9.0.30729.1.

Copyright © 2003–2011 JetBrains s.r.o .. Все права защищены.

0 голосов
/ 02 сентября 2010

Сделайте свой абстрактный класс TestFixture.Я делаю то же самое с R #.

РЕДАКТИРОВАТЬ: Я только что заметил, что R # (я использую 5.1 с NUnit 2.6) пометит класс как тестовое устройство, если в нем Test sнезависимо от того, присваивается ли подкласс или базовый класс TestFixture.Так что это может не решить вашу проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...