Установщики модульного теста - PullRequest
5 голосов
/ 14 октября 2009

Я начинаю работать с инсталлятором, используя WiX (да, не Installshield), и я надеялся сделать TDD инсталлятора. Кто-нибудь знает простой способ сделать это?

Ответы [ 4 ]

6 голосов
/ 14 октября 2009

Для меня это больше похоже на интеграционный тест, чем на TDD.

Насколько я могу судить, никаких тестов MSI как таковых нет.

Тем не менее, вы можете попробовать что-то вроде этого (при условии, что у вас есть непрерывный сервер интеграции):

  1. после успешной сборки установите MSI на чистую виртуальную машину - если установка не удалась, сделайте что-нибудь (почта, билет, что угодно)
  2. запускать любые интеграционные тесты, которые у вас есть в вашем проекте

После этого вы можете быть уверены, что установленное приложение делает то, что должно.

2 голосов
/ 01 ноября 2012

Я хочу добавить ссылку на пост о том, как создать юнит-тест для WIX installer базы данных: http://miroslawmiodonski.blogspot.com/2012/10/how-to-create-unit-test-for-wix.html

2 голосов
/ 18 июля 2011

Имеет ли это смысл, если вы создаете какой-нибудь файл скрипта, который проверяет, что файлы находятся в нужных местах. Я ожидаю сделать это как Perl или Python скрипт

test_installer_wix.pl

msiexec /x product.msi # remove
msiexec /i product.msi /silent # install

ASSERT_EXIST_FILE(PFILE, 'productname/application.exe')
ASSERT_REGKEY_EXISTS()

и т. Д.

0 голосов
/ 16 октября 2009

Может быть неплохо запустить несколько стандартных тестов для сгенерированного MSI. MSI-файлы поддерживают множество различных сценариев развертывания: установка с помощью администратора для извлечения файлов, установка с объявлением для активного каталога, установка без вывода сообщений, установка с обслуживанием, удаление и т.д. даже учитывая, что я знаю о наборе инструментов WIX.

Тем не менее, я думаю, что первым, лучшим шагом к созданию качественной установки было бы запустить MSI через пакет проверки MSI. Они называются ICE (внутренними оценщиками согласованности) и поставляются в виде файла * .cub с пакетом Windows Installer SDK. Выполнение этих скриптов, как правило, выявляет множество плохих конструктивных решений в MSI. Инструмент WIX для этого называется smoke.exe.

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