2016-06-10 5 views
0

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

[TestMethod] 
[TestCategory("UITest"), TestCategory("PersonalDetailsFlow")] 
[DataSource("Microsoft.VisualStudio.TestTools.DataSource.XML", "|DataDirectory|\\TestFlows.xml", "flow", DataAccessMethod.Sequential)] 
public void TestMethod1() 
{ 
//Test Code 
} 


[ClassInitialize] 
public static void ClassInit(TestContext context) 
{ 
    DriverData driverData = new DriverData(); 
    driverData.DataGenerator(); 
} 

Создание данных происходит в разделе ClassInitialize. Когда я устанавливаю файл настроек в файл testettings, проект запускается без каких-либо проблем.

Когда я изменяю файл настроек тестов, чтобы указать на файл runsettings (поскольку у меня много данных, переданных из файла runsettings), я получаю следующую строку ошибки «Адаптер тестового блока не смог подключиться к источнику данных или прочитайте данные. Дополнительную информацию об устранении этой ошибки см. в разделе «Поиск и устранение неисправностей при тестировании данных»

Мне очень любопытно узнать, что происходит, когда я запускаю с помощью наборов параметров, чтобы сделать его успешным, но при использовании файла runsettings, получение всех проблем и способы избежать этого при использовании файла настроек.

Кроме того, пожалуйста, обратитесь к How to execute a line of code which is a data setup code in MSTest before all test

+0

Что значит «изменить файл testettings, чтобы указать на файл настроек»? –

ответ

2

В принципе, файл настроек тестов совместим со старыми модульными тестами. Он был заменен на VS 2013 с помощью настроек. При использовании наборов тестов он возвращается в какой-то старый режим совместимости, который ведет себя по-разному в таких вещах, как относительные пути и прочее. Не знаю, о какой конкретной проблеме у вас есть.

+0

Спасибо за это. Моя проблема: мне нужно выполнить некоторые строки кода до начала теста. Это происходит с использованием настроек тестов, но не с использованием файла runsettings. –

+0

Используете ли вы TestInitialize, ClassInitialize, AssemblyInitialize? –

+0

да. Я попробовал все варианты и теперь исчерпал опции wrt intialize. Спасибо за ваше предложение –

Смежные вопросы