Мотивация. У меня была готова новая версия моего приложения Cocoa, которая отлично работала на всех машинах бета-тестеров. Я выпустил его. Оказывается, одна важная функция просто не работает ни на каком другом компьютере . Ой! Да, прочтите это еще раз: Я выпустил программу, которая не работает .

Причина. Пользователи, которые использовали предыдущие версии моего приложения (читай: все мои лояльные бета-тестеры), уже имели папку ~/Application Support/MyApp/ из более старой версии. Из-за критической ошибки в новом выпуске эта папка была необходима для работы программы. А для всех остальных, потому что папки не было, это не сработало.

Как вы понимаете, это очень неловко, и я хочу, чтобы это никогда, никогда не повторилось.

Средства правовой защиты? - Самый простой способ убедиться в этом - это, конечно, загрузить и установить его на «чистую» машину непосредственно перед публикацией нового выпуска. Но это кажется непрактичным, потому что со временем у меня закончатся друзья с Mac, которые еще не пробовали мое приложение (в конечном итоге все будут ;-)), и потому что я не горю желанием «форматировать c:» мой Mac раньше. каждый релиз…

Вот где мне нужна ваша помощь:

Как я могу гарантировать, что пользователь, который никогда раньше не использовал мое программное обеспечение, получил те же результаты, что и тот, кто использовал его?

0
Yang Meyer 6 Янв 2010 в 22:52

2 ответа

Лучший ответ

Виртуальные машины (VMWare Workstation и т. Д.) Могут быть полезны для тестирования чистой установки приложений. Вы можете запустить новую виртуальную ОС, установить свои вещи, протестировать их, а затем удалить виртуальную машину, когда закончите. Есть способы автоматизировать раскручивание виртуальной машины, что может сделать вашу жизнь еще проще.

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

2
Andy White 6 Янв 2010 в 22:56
Виртуальные машины - это то, что нужно. Я считаю, что VMWare и Parallels позволяют создавать снимки виртуальной машины. Я бы рекомендовал создать чистую установку виртуальной машины, сделать снимок системы и выполнить откат по завершении. При необходимости намного быстрее получить чистую систему.
 – 
Will Eddins
6 Янв 2010 в 23:00

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

0
Yang Meyer 11 Янв 2010 в 20:56