Существует ли C # mstest эквивалент системного свойства в Java? - PullRequest
1 голос
/ 20 сентября 2011

Я хотел бы иметь возможность передать системный аргумент "host" в набор MStest. Чтобы создать автоматизированные задания для непрерывной интеграции, я хочу иметь возможность указать хост в качестве параметра, чтобы тесты выполнялись на этом конкретном хосте. Я не мог найти такой вариант с mstest. В Java будет работать -Dhost = "localhost", который можно указать в качестве параметра для работающей виртуальной машины. Есть ли аналогичный способ в MStest для C #?

Ответы [ 2 ]

1 голос
/ 21 сентября 2011

Не существует эквивалента свойствам системы Java, о которых вы упоминаете.Вот несколько идей о том, как приблизить то, что вы ищете:

[1]

Поддержка тестов Visual Studio включает в себя Конфигурации тестового прогона (переименован Настройки теста в Visual Studio 2010).Это файл, который задает множество параметров, управляющих аспектами выполнения теста.Например, вы можете развернуть дополнительные файлы вместе с тестом или запустить пакетный сценарий «setup» перед началом теста.

Если у вас конечный набор хостов, вы можете иметь отдельные настройки конфигурации / теста для каждого хоста.Каждая конфигурация / настройки будет развертывать файл, который содержит имя другого хоста.Затем вы можете прочитать этот файл как часть вашей настройки модульного теста, возможно, из вашего [TestInitialize] метода.Немного странно, но, возможно, он будет делать то, что вы хотите.

[2]

Вы можете установить системную переменную среды (например, "TESTHOST") перед запуском теста, изатем прочитайте эту переменную среды из ваших тестов.Вы можете обернуть все это в простую программу или пакетный скрипт, который принимает аргумент для установки переменной среды, запускает mstest и впоследствии удаляет переменную среды.Например, этот пост StackOverflow может дать вам некоторые идеи о том, как вы можете сделать что-то подобное с помощью PowerShell.

0 голосов
/ 20 сентября 2011

Я не верю, что есть точный эквивалент. Вместо этого попробуйте использовать файлы конфигурации .NET:

Добавьте файл конфигурации приложения (App.config) в ваш проект MSTest. Добавьте ваши «системные» свойства в качестве ключей в разделе appSettings. Используйте эти значения в своих тестах, используя коллекцию ConfigurationManager.AppSettings.

...