Автоматизированное тестирование изображения

При предположении, что "лаборатория" не является квазидата-центром, сэкономьте на световых сигналах функции (МОТ HP, Dell DRAC, IBM RSA), не покупайте предоставления резервного питания или диск SAS.

Другой способ сэкономить деньги состоит в том, чтобы купить рекламные конфигурации "Экспресса", которые готовы поставить, купить обновленный или независимо от того, что у Вашего локального торгового посредника есть ложь.

1
задан 13 April 2017 в 15:14
4 ответа

Я видел Баклажан, предлагаемый много раз для способа автоматизировать тестирование - особенно с приложением (приложениями) GUI.

Кроме того, короткий сценарий оболочки, который работает в первом запуске и удаляет себя впоследствии, чтобы гарантировать, что параметры конфигурации настраиваются (например, связываются с Открыть Directory, может получить доступ к серверам, считать определенное предпочтительное использование PlistBuddy или значения по умолчанию, проверить, что MCXCache корректен, и т.д.),

1
ответ дан 3 December 2019 в 20:03

"Тестом" Вы имеете в виду, "проверяют это существуют, определенные пакеты и программы и что они работают как ожидалось"?

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

Программа выставила бы API на поле для различных тестов. По умолчанию это работало бы, когда машина загружается, слушание на (говорит) что порт 8080. Ваш сценарий управления соединил бы и выполнил бы последовательность команд, стиля модульного теста. Вы добираетесь для управления уровнем воздействия, от "делает этот каталог, существуют" к, "что происходит, когда Вы запускаете фотошоп".

Как я говорю, это не здравый смысл Mac, но было бы простым и портативным решением.

PS После того, чтобы проходить тесты, пакет мог ответить на заключительную команду для удаления себя из изображения :)

1
ответ дан 3 December 2019 в 20:03
  • 1
    Я включил детали, что я подразумеваю под " тест " Это - интересная идея. Я - программист и администратор Mac, но don' t имеют ясное понятие определенных для Mac битов, также. –  Clinton Blackmore 9 June 2009 в 00:06

AppleScript походит на очевидный выбор. Вот быстрый запуск в нем (с некоторыми примечаниями по приложениям, которые не манипулировали в минимальном тестировании, которое я сделал) (примечание: замените reportEvent чем-то более соответствующим...):

my TestApp("Address Book")
#my testApp("Aperture") # Aperture doesn't seem to understand activate -- WTF?
#my testApp("Automator") # Automator brings up a sheet when launched -- not sure how to dismiss
my TestApp("Calculator")
my TestApp("Chess")
my TestApp("Dictionary")
# etc...
my reportEvent("OS", "FinishedTest")


on TestApp(appName)
    tell application appName to activate
    delay 1
    tell application "System Events" to count (application processes whose name is appName)
    if result is 0 then
        my reportEvent(appName, "QuitUnexpectedly")
    end if
    tell application appName to quit
    delay 1
    tell application "System Events" to count (application processes whose name is appName)
    if result is not 0 then
        my reportEvent(appName, "FailedToQuit")
    end if
end TestApp

on reportEvent(appName, eventDesc)
    do shell script "curl 'http://server/eventtracker.php?app=" & sanitizeSpaces(appName) & "&event=" & sanitizeSpaces(eventDesc) & "'"
end reportEvent

on sanitizeSpaces(dangerousString)
    set AppleScript's text item delimiters to " "
    set safeString to text items of dangerousString
    set AppleScript's text item delimiters to "_"
    return safeString as Unicode text
end sanitizeSpaces

... сохраните это как Приложение из Редактора AppleScript (таким образом, оно будет работать при открытии) затем добавьте его к тестовому списку Объектов Входа в систему учетной записи (область System Preferences-> Accounts-> вкладка Login Items).

Я задержу проблему того, чтобы заставлять сетевую учетную запись автовойти в систему при начальной загрузке. Я подозреваю, что существует not-too-hard способ сделать это (возможно, через управляемые предпочтения или просто заглядывание соответствующим файлам настроек "рукой" - т.е. сценарий поствосстановления), но у меня нет полезной тестовой установки удобной в данный момент.

1
ответ дан 3 December 2019 в 20:03
  • 1
    Спасибо! Я действительно ценю усилие, которое вошло в это. Это - лучший ответ I' ve получен все же. –  Clinton Blackmore 9 June 2009 в 17:54
  • 2
    Средство отслеживания события является просто заполнителем для некоторого сценария серверной стороны или является им что-то, что я могу загрузить и использовать теперь? –  Clinton Blackmore 9 June 2009 в 17:56
  • 3
    Я don' t имеют сценарий средства отслеживания, я просто вставил это как заполнителя; Вы могли записать сценарий CGI, Вы могли использовать недопустимый URL и просто grep соответствующая информация от сети server' s журнал доступа, Вы могли заменить reportEvent чем-то, что создает файл журнала в тесте user' s корневой каталог (I' m принимающий it' s пользователь сети, таким образом, Вы могли затем проверять/контролировать журнал непосредственно на файловом сервере), Вы могли создать список известных событий и послать его по электронной почте в конце и т.д... Это действительно зависит, о какой форме Вы хотите свое создание отчетов в. –  Gordon Davisson 9 June 2009 в 23:19

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

0
ответ дан 3 December 2019 в 20:03

Теги

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