none
Можно ли в стандартных тестах Visual Studio 2010 получить доступ к нескольким наборам данных RRS feed

  • Вопрос

  • Добрый день,

    Подскажите если кто знает.

    Задача состоит примерно в следующем у меня есть несколько наборов данных (допусти 5 юзеров, 3 проекта, 4 элемента) и я в одном тесте хочу использовать допустим только Юзеров, а в другом все три параметра сразу (т.е. чтобы мой тест выполнился 3*4*5=60 раз)

    Можно ли это как-то организовать без connectionStrings

    Не хочется для этого создавать таблицы всех возможных пересечений данных (юзеры, юзеры+проекты, юзеры+проекты+элементы и т.д.). Да и считывать данные из кода бывает проще.

    Если нет, то как это организовать с их помощью (ведь нельзя в тесте использовать два DataSource и в одном DataSource нельзя использовать два раздела/таблицы)

    Хочется иметь примерно такой код


    User[] users = new User[] {...}

    Project[] projects = new Project[] {...}

    Element[] elements = new element[] {...}

    [TestMethod]

    [MyDataSource(users)]

    public MyTestMethod1(Users user)

    { MyCheck(user)... }

    [TestMethod]
    [MyDataSource(users, projects, elements)
    public MyTestMethod2(User user, Project project, Element element)

    {

    MyCheck(project, element)

    MyCheck(project, user)

    }

    В целом мне не важно где писать мои данные, главные вопрос: как лучше сделать, чтобы я мог несколько наборов данных использовать в разных теста в любой пропорции

    Test1(dataSet1,dataSet2)

    Test2(dataSet1)

    Test3(dataSet2,dataSet3,dataSet5)

    и т.д.

    При этом если мощности дата сетов соответственно dataSet1 состоит из 4 элемента, dataSet2 - 2, dataSet3 - 100, dataSet5 - 1

    То Test1 выполнится - 4*2=8 раз, Test2 - 4 раза, Test3 - 200 раз

    P.S. К примеру в NUnit это можно сделать примерно так

    [TestCase(12,3, Result=4)]
    [TestCase(12,2, Result=6)]
    [TestCase(12,4, Result=3)]
    public int DivideTest(int n, int d)
    {
      return( n / d );
    }

    но хочется уметь передавать более сложные данные чем константы (типа структур) и к тому же иметь тесты интегрированные в среду для связи их с тесткейсами сторями в TFS и т.д.

    Спасибо



    • Изменено Roman Iovlev 11 апреля 2012 г. 14:14
    11 апреля 2012 г. 14:09

Ответы

Все ответы