최초의 소프트웨어 테스트

6950 단어 테스트

소프트웨어 테스트란?


/절차가 의도대로 돌아가나요?데이터 확인
• 원하는 대로 되지 않는 곳(오류)을 줄여 품질을 보증

소프트웨어 테스트 유형

  • 단일 테스트
    하나하나의 모듈(프로그램의 부품)은 잘 테스트해야 한다
  • 종합 테스트
    테스트에서 모듈 단일 테스트를 통과한 모듈과
    다른 외부 모듈이 결합된 상태에서 테스트를 진행합니다.
  • UI, 시스템 테스트
  • 랙 테스트
    소프트웨어의 외투 내부 특성을 고려할 때 외부에서만 관찰할 때의 규격으로 테스트 사례를 제작하는 지식보다 업무 관련 지식
  • 이 필요하다.
  • 미백 테스트
    외투 내부의 특성을 고려하여 테스트 용례를 제작할 때 그 특성을 읽어야 하기 때문에 어느 정도의 지식이 필요하다
  • 소프트웨어 테스트 기술


    테스트 용례를 설계할 때 주의해야 할 사항


    테스트 용례를 실제 실행할 수 있는 수준으로 줄이는 동시에
    아주 적은 테스트 용례라도 품질을 보증할 수 있다

    테스트 디자인의 소프트웨어는 다음과 같은 두 가지가 있다


    계약 테스트
    주어진 조건 범위 내에서 테스트하는 소프트웨어
    만일 조건이 1~10의 정수만 있다면 이 범위 내에서만 테스트를 진행할 수 있다
    문자열, 부동 소수점 또는 11보다 큰 정수는 테스트되지 않습니다.
    방어 테스트
    지정된 조건 범위 밖에서도 테스트를 수행하는 소프트웨어
    만약 조건이 1~10의 정수만 있다면
    문자열, 부동점, 11 이상의 정수 등의 테스트를 실시하여 예외나 오류가 발생했는지 확인하다
    정답이 하나도 없어요.
    중요한 것은 어떤 모방 테스트를 진행합니까?명확히 한 후에 다시 테스트하다

    망라성과 바늘점


    소프트웨어 테스트에서 중요한 두 개념은'망라성'과'바늘점'이다.
    망라성➡가능한 한 시험 준비의 누락을 피하다
    판매점➡수상한 점을 꼼꼼히 조사할 준비를 하다
    의심스러운 점을 발견하려면 테스트의 관점을 확대하는 것이 중요하다
    다음 세 가지 방법으로 관점을 전개하여 의심스러운 점을 찾아내다
    ① 구체적인 예를 고려하고 그 예의'간','역','유추','외측'을 고려한다
    ② 악조건 고려
    ③'알고 있다','당연하다'고 생각하는 일을 의심한다
    확인할 테스트 항목 하나씩 진행
    여러 조건을 동시에 테스트하는데 어디가 결함인지 모르겠어요.

    테스트 기술


    단순 조건 테스트


    동치류 테스트


    테스트의 의미가 같은 값을 가리킨다
    if(a <= 10){}
    
    그렇다면
    a=3과 a=7의 뜻은 같다
    즉, 동치 테스트가 있으면 된다는 것이다

    경계값 테스트

    if(a <= 10){}
    
    그렇다면
    a = 9 및 a = 10은 경계 값입니다.
    이 부근에서 조사를 진행하면 주름을 효과적으로 발견할 수 있다

    다중 조건 테스트


    조건이 증가함에 따라 이론이 복잡해지면 테스트 용례의 누락이 발생하기 쉽다
    이 두 가지 다른 기술은 각각 주 분석 테스트와 작업표이다

    주요 분석 테스트


    조건이 상호작용하는 상황
    여러 조건이 디지털식으로 결합된 상황에서 유효하다
    //a、bの範囲は共に0~100の整数とする
    if(a + b >= 60){
      OK
    }else{
      NG
    }
    
    이런 상황에서 a의 값과 b의 값은 상호작용을 가진다고 할 수 있다(b의 값은 a의 값에 따라 변화한다)
  • a+b의 경계값은 60
  • 하나하나 확인하는 테스트 항목
  • 이런 것들로 테스트 사례를 생각해보면...
    a=0、b=59 ⇨ NG
    a=0、b=60 ⇨ OK
    a=59、b=0 ⇨ NG
    a=60、b=0 ⇨ OK
    의 4가지 모드

    테스트 테이블


    조건이 서로 독립되어 논리 관계를 정리할 때
    여러 조건이 논리적으로 결합된 상황에서 유효하다
    //a、bの範囲は共に0~100の整数とする
    if( (a >= 40) && (b >= 40) ){
      OK
    }else{
      NG
    }
    
    이 경우 유효
    양식 작성 및 조건 및 결과 정리

    이 네 가지 모델은 테스트 용례가 되었다
    그러나if문에서 조건은 왼쪽부터 순서대로 처리됩니다.
    따라서 a>=40이 가짜라면 전체적인 결과는 NG가 된다.
    오른쪽 테스트를 생략할 수 있다는 것이다.

    더 복잡한 조건의 테스트


    더욱 복잡한 조합을 망라하려면, 테스트 사례가 방대해질 것이다
    ● 소재망라하기 어려워방침전환 필요

    쌍 구성 테스트


    의 조합으로 테스트를 진행하는 것은 조건에 따라 진행되는 것이 아니다
    조건 A, B, C가 각각 "1"또는 "0"의 값을 취할 때
    모든 조합이 8 가지가 있어요.

    그중 4종은 우도군이 조합한 것이다

    그렇다면 테스트 그래프를 통해 어느 정도의 망라성을 확보하는 이유는?


    거의 의 결함 은 동기적 결함 과 탄력적 결함 이다
    동기성 결함→변형 부정확한 이동의 결함
    주름 변형 결함→두 가지 형태 조합 시 생기는 결함
    따라서 헤어스타일을 조사함으로써 금형의 결함과 변형된 결함을 망라할 수 있기 때문에 어느 정도의 망라성을 확보할 수 있다.
    그래픽 구성 테스트를 통해 70~85% 정도의 주름이 발견될 것으로 기대된다.
    직행표 참고 목록 만들기 쉽다
    그러나 주의해야 할 것은 이것만으로는 완벽한 테스트가 될 수 없다는 것이다

    상태 마이그레이션 테스트


    현재 상태 및 변천에 따라 변경된 소프트웨어 테스트

    상태 마이그레이션 다이어그램


    간단히 전체를 확인하다
    컨디션이 많이 바뀌었어요. 컨디션, 컨디션, 하트 3개로 구성되어 있어요.
    'i heart'는 컨디션의 변화를 뜻합니다.
    간단한 초시계를 생각하면 이런 느낌이 들어요.

    상태 마이그레이션 테이블


    위의 상태 변환 맵을 테이블 형식으로 변환

    N 스위치


    마이그레이션이 지속적으로 수행될 때 올바른 작업 확인
    만약 두 번의 이동이 연속된다면

    상태 마이그레이션 다이어그램, 상태 마이그레이션 테이블, N 스위치 레이블에 대한 테스트,
    그 이용 목적을 이해한 토대에서 요구된 품질에 따라 구분하여 사용할 필요가 있다

    시험 재료 부동


    모든 변수에서 생성 → 사용 → 폐기 주기 확인 테스트
    변수가 생성되지 않았을 때 사용하시겠습니까?
    생성되지 않은 변수가 있습니까?
    그렇다면 변수는'생성→사용→폐기'순서에 따라 실행됩니까?확인

    제어 흐름 테스트


    외투 중의 처리가 가능합니까?기준이 되는 테스트.

    흐름 제어 테스트의 생각


    상태 게이트 카드 레이블(명령 포함)


    실행 가능한 줄 중 몇 줄을 실행했다
    if(a > 0 && b == 1){
      x = 1
    }
    
    이 경우 실행 가능한 행 "2"의 몇 줄을 실행했습니까?그렇습니다.

    탁자의 주름(판정 포함)


    판정의 불일치를 포괄했는가
    if(a > 0 && b == 1){
      x = 1
    }
    
    (a>0&b=1)의 판정이 진짜인지 가짜인지
    의 1가지 모드 중 망라된 것 아닙니까?그렇습니다.

    콤보 카드(망라 조건)


    판정 중의 조건식의 진위를 망라했는가
    if(a > 0 && b == 1){
      x = 1
    }
    
    "a>0"진짜예요.
    "a>0"은 가짜입니다.
    'b==1'진짜예요.
    "b==1"은 가짜입니다.
    네 가지 유형 중 망라된 거 아니야?그렇습니다.

    복합 복합 복합 복합 복합 복합 조건(망라 복합 조건)


    조건식의 진위 조합
    if(a > 0 && b == 1){
      x = 1
    }
    
    이런 상황에서
    "a > 0"은 진짜이고, "b==1"은 진짜입니다.
    "a>0"은 진짜이고 "b==1"은 가짜입니다.
    "a>0"은 가짜이고 "b==1"은 진짜입니다.
    "a>0"은 가짜이고 "b==1"은 가짜입니다.
    네 가지 유형 중 망라된 거 아니야?그렇습니다.

    MC/DC 카드


    복합 복합 복합 복합기의 개량판
    컨디션
    ①판단문은 모든 결과를 수행한다
    ② 모든 모드 조건부 실행
    ③ 조건식의 조건별 영향 결과
    if(a > 0 && b == 1){
      x = 1
    }
    
    이런 상황에서
    "a > 0"은 진짜이고, "b==1"은 진짜입니다.
    "a>0"은 진짜이고 "b==1"은 가짜입니다.
    "a>0"은 가짜이고 "b==1"은 진짜입니다.
    의 3가지 유형 중 망라된 것이 아닐까요?그렇습니다.
    왜 세 개가 됐지?
    '조건식의 각 조건은 결과에 단독으로 영향을 미친다'는 조건은 관계가 있다
    이번 조건식.
    (a > 0 && b == 1)
    그러면'a>0'과'b==1'은 &의 조합입니다.
    즉, "a > 0"과 "b = 1"중 어느 것이 가짜인지 전체적인 판단은 가짜가 된다.
    간단하게 봐요.
    ① 거짓 & ② 능청
    의 경우 ②를 고정하고 ①만 진짜로 고친다
    ①진&②능청스럽다
    결과는 가짜였다
    상대적으로
    ①진 & ②진 결말
    의 경우 ②를 고정시키고 ①만 위조로 고쳐 쓴다
    ① 거짓 & ② 진짜 거짓
    결과가 진짜가 됐어요.
    한 쪽만 변하게 한다면 전체적인 결과에 변화가 필요하다는 얘기다.
    근거
    'a>0'은 가짜이고'b==1'은 가짜로 이 조건을 만족시키지 못하기 때문에 테스트 용례에서 제외합니다.그러니까

    좋은 웹페이지 즐겨찾기