수색…


소개

Infrastructure Management Services를 자동화하면 FTE가 줄어들뿐만 아니라 여러 도구, 오케스트레이션, 오케스트레이션 엔진, 스크립트 및 쉬운 UI를 사용하여 점차 누적 적으로 향상된 ROI를 얻을 수 있습니다

콘솔 응용 프로그램의 블랙 박스 통합 테스트를위한 간단한 스크립트

표준 입력 및 표준 출력과 상호 작용하는 콘솔 응용 프로그램에 대한 테스트를 자동화하는 방법에 대한 간단한 예제입니다.

테스트 된 응용 프로그램은 모든 새 행을 읽고 합계하며 하나의 흰색 행이 제공된 후에 결과를 제공합니다. 출력 쉘 스크립트는 출력이 일치 할 때 "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