Как можно использовать “внешние” конфигурационные файлы (т.е. с configSource) с проектом модульного теста MSTest?

Возможно, более читаемый способ решить эту проблему - использовать Array#find следующим образом:

const arr = [
  {name: 'first', amount: 2},
  {name: 'second', amount: 1},
  {name: 'third', amount: 1}
];
const obj = {name: 'second', amount: 3};

const element = arr.find(el => el.name === obj.name);

if (element) {
  element.amount += obj.amount;
} else {
  arr.push(obj);
}

console.log(arr);

11
задан Mihai Limbășan 18 October 2008 в 20:47
поделиться

2 ответа

Найденный им:

При редактировании конфигурации тестового прогона (путем двойного щелчка по .testrunconfig файлу, который помещается в 'папку решения для ' Объектов Решения, когда Вы добавляете новый модульный тест), Вы получаете диалоговое окно конфигурации тестового прогона. Существует раздел, там назвал 'Развертывание', где Вы можете specifiy файлы или целые папки отовсюду в решении, которое может быть скопировано со скомпилированными блоками во время выполнения к корректной папке.

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

11
ответ дан 3 December 2019 в 05:14
поделиться

Конфигурации тестового прогона являются немного неловкими при попытке запустить тесты за пределами Visual Studio.

Для выполнения командной строки с помощью MSTest они становятся довольно громоздкими для содержания в чистоте. Они также "глобальны" к решению, таким образом, внешние файлы будут скопированы для каждого тестового проекта.

Я очень предпочитаю DeploymentItem атрибут.

[TestMethod]
[DeploymentItem(@"test_data.file")]
public void FooTest()
{...}

Делает тесты независимыми от .testrunconfig файлов.

10
ответ дан 3 December 2019 в 05:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: