Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

실패한 테스트 결과 분석하기

이 예제에서는 실패한 테스트를 식별하고 다시 실행하는 방법을 보여줍니다.

잘못된 테스트 메서드 생성하기

SolverTest 테스트 케이스를 사용하여 메서드 testBadRealSolution을 추가하십시오. testRealSolution을 기반으로 하는 이 테스트는 입력값 1,3,2를 사용하여 quadraticSolver 함수를 호출하지만 그 결과를 잘못된 해 [2,1]에 대해 테스트합니다.

function testBadRealSolution(testCase)
    actSolution = quadraticSolver(1,3,2);
    expSolution = [2,1];
    testCase.verifyEqual(actSolution,expSolution)
end

새 테스트 스위트 실행하기

업데이트된 SolverTest 클래스 정의를 저장하고 테스트를 다시 실행하십시오.

quadTests = matlab.unittest.TestSuite.fromClass(?SolverTest);
result1 = run(quadTests);
Running SolverTest
..
================================================================================
Verification failed in SolverTest/testBadRealSolution.

    ---------------------
    Framework Diagnostic:
    ---------------------
    verifyEqual failed.
    --> The values are not equal using "isequaln".
    --> Failure table:
                Index    Actual    Expected    Error    RelativeError
                _____    ______    ________    _____    _____________
            
                1        -1        2           -3       -1.5         
                2        -2        1           -3         -3         
    
    Actual Value:
            -1    -2
    Expected Value:
             2     1

    ------------------
    Stack Information:
    ------------------
    In C:\work\SolverTest.m (SolverTest.testBadRealSolution) at 19
================================================================================
.
Done SolverTest
__________

Failure Summary:

     Name                            Failed  Incomplete  Reason(s)
    =============================================================================
     SolverTest/testBadRealSolution    X                 Failed by verification.

결과 분석하기

출력값이 SolverTest/testBadRealSolution 실패를 알립니다. Framework Diagnostic에서 다음 내용을 볼 수 있습니다.

    Actual Value:
            -1    -2
    Expected Value:
             2     1

이때, 사용자는 오류가 quadraticSolver에 있는지 아니면 expSolution의 값에 있는지 판단해야 합니다.

오류 수정하기

testBadRealSolution에서 expSolution의 값을 편집하십시오.

expSolution = [-1 -2];

테스트 다시 실행하기

SolverTest를 저장하고 실패한 테스트만 다시 실행하십시오.

failedTests = quadTests([result1.Failed]);
result2 = run(failedTests)
Running SolverTest
.
Done SolverTest
__________


result2 = 

  TestResult with properties:

          Name: 'SolverTest/testBadRealSolution'
        Passed: 1
        Failed: 0
    Incomplete: 0
      Duration: 0.0108
       Details: [1x1 struct]

Totals:
   1 Passed, 0 Failed, 0 Incomplete.
   0.010813 seconds testing time.

또는 테스트 결과에서 (rerun) 링크를 사용하여 실패한 테스트를 다시 실행할 수 있습니다.

관련 항목