Main Content

matlab.unittest.constraints.EveryElementOf 클래스

네임스페이스: matlab.unittest.constraints

배열의 모든 요소가 제약 조건을 충족하는지 테스트

설명

matlab.unittest.constraints.EveryElementOf 클래스는 실제 값의 프록시를 제공하므로 배열의 모든 요소가 주어진 제약 조건을 충족하는지 테스트할 수 있습니다. 테스트에 프록시를 포함시키면 테스트 프레임워크가 요소별로 제약 조건을 검사합니다.

이 클래스의 인스턴스를 가설 검정 메서드인 assertThat, assumeThat, fatalAssertThat 또는 verifyThat을 사용하여 수행되는 테스트에서 사용할 수 있습니다. 이 클래스는 제공된 실제 값을 수정하지 않습니다. 단지, 제약 조건 분석을 수행하는 래퍼 역할만 합니다.

생성

설명

예제

p = matlab.unittest.constraints.EveryElementOf(actualValue)는 지정된 배열의 모든 요소가 제약 조건을 충족하는지 테스트하는 프록시를 생성하고 ActualValue 속성을 설정합니다. 이 프록시를 사용하여 제약 조건과 비교 테스트할 때 actualValue의 모든 요소가 제약 조건을 충족하면 테스트가 통과합니다.

속성

모두 확장

제약 조건과 비교 테스트할 실제 값으로, 임의의 데이터형 값으로 반환됩니다. 프록시를 생성할 때 이 속성의 값을 지정합니다. 실제 값의 클래스는 배열 인덱싱을 지원하고 제약 조건과 호환 가능해야 합니다.

특성:

GetAccess
public
SetAccess
private

예제

모두 축소

EveryElementOf 클래스를 사용하여 배열의 모든 요소가 제약 조건을 충족하는지 테스트합니다.

먼저 이 예제에서 사용되는 클래스를 가져옵니다.

import matlab.unittest.TestCase
import matlab.unittest.constraints.EveryElementOf
import matlab.unittest.constraints.ContainsSubstring
import matlab.unittest.constraints.HasNaN
import matlab.unittest.constraints.IsReal

대화형 방식 테스트를 위한 테스트 케이스를 생성합니다.

testCase = TestCase.forInteractiveUse;

벡터 ["Rain" "Main" "Plain"]의 모든 요소에 부분문자열 "ain"이 포함되어 있는지 확인합니다.

testCase.verifyThat(EveryElementOf(["Rain" "Main" "Plain"]), ...
    ContainsSubstring("ain"))
Verification passed.

벡터 [NaN 0/0 5]의 모든 요소가 NaN 값인지 테스트합니다. 세 번째 요소가 NaN 값이 아니므로 테스트가 실패합니다.

testCase.verifyThat(EveryElementOf([NaN 0/0 5]),HasNaN)
Verification failed.
    ---------------------
    Framework Diagnostic:
    ---------------------
    At least one element failed.
    
    Failing indices:
        3
    The first failing element failed because:
    --> HasNaN failed.
        --> The value must be NaN.
        
        Actual Value:
             5
    
    Actual Value Array:
       NaN   NaN     5

벡터 [0 4i]의 모든 요소가 복소수인지 테스트합니다. 첫 번째 요소가 실수 값이므로 테스트가 실패합니다.

testCase.verifyThat(EveryElementOf([0 4i]),~IsReal)
Verification failed.
    ---------------------
    Framework Diagnostic:
    ---------------------
    At least one element failed.
    
    Failing indices:
        1
    The first failing element failed because:
    --> Negated IsReal failed.
        --> The value must not be real.
        
        Actual Value:
             0
    
    Actual Value Array:
      0.000000000000000 + 0.000000000000000i  0.000000000000000 + 4.000000000000000i

  • EveryElementOf를 사용하면 배열의 모든 요소가 제약 조건을 충족하는지 검사할 수 있습니다. 그러나 IsEqualTo, IsGreaterThan, IsLessThan과 같은 일부 제약 조건은 모든 요소가 조건을 충족하는지에 대한 유효성 검사를 기본적으로 수행합니다. 이 경우 EveryElementOf를 사용하는 것은 불필요하며 가설 검정(Qualification) 성능을 저하시킵니다.

버전 내역

R2013a에 개발됨