PowerShell
Автоматизация инфраструктуры
Поиск…
Вступление
Автоматизация служб управления инфраструктурой приводит к сокращению FTE, а также к кумулятивному повышению рентабельности инвестиций с использованием нескольких инструментов, оркестров, оркестровки Engine, сценариев и простого пользовательского интерфейса
Простой скрипт для тестирования интеграции с черным ящиком консольных приложений
Это простой пример того, как вы можете автоматизировать тесты для консольного приложения, которые взаимодействуют со стандартным вводом и стандартным выходом.
Проверенное приложение считывает и суммирует каждую новую строку и будет предоставлять результат после предоставления одной белой строки. Сценарий оболочки питания записывает «pass» при совпадении вывода.
$process = New-Object System.Diagnostics.Process
$process.StartInfo.FileName = ".\ConsoleApp1.exe"
$process.StartInfo.UseShellExecute = $false
$process.StartInfo.RedirectStandardOutput = $true
$process.StartInfo.RedirectStandardInput = $true
if ( $process.Start() ) {
# input
$process.StandardInput.WriteLine("1");
$process.StandardInput.WriteLine("2");
$process.StandardInput.WriteLine("3");
$process.StandardInput.WriteLine();
$process.StandardInput.WriteLine();
# output check
$output = $process.StandardOutput.ReadToEnd()
if ( $output ) {
if ( $output.Contains("sum 6") ) {
Write "pass"
}
else {
Write-Error $output
}
}
$process.WaitForExit()
}
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow