데이터베이스 테스트 란 무엇이며 어떻게 수행합니까?



데이터베이스 테스팅에 관한이 기사는 데이터베이스 테스팅의 기본 사항, 수행 이유, 다양한 유형 및 사용되는 인기 도구에 대해 설명합니다.

데이터는 모든 소프트웨어 애플리케이션의 핵심이며 데이터를 저장합니다. 그러나 데이터의 크기가 증가하거나 데이터베이스가 복잡 해짐에 따라 데이터 처리가 어려워집니다. 따라서 데이터 유효성 검사가 매우 필요합니다. 여기에서 데이터베이스 테스트가 편리하고 애플리케이션이 검색하거나 데이터베이스에 저장하는 데이터의 품질, 보안 및 정확성을 확인하는 데 도움이됩니다. 이 기사의 매체를 통해 이에 대한 완전한 통찰력을 제공 할 것입니다.

다음은이 튜토리얼에서 다루는 주제입니다.





그럼 시작하겠습니다.

데이터베이스 테스트 란 무엇입니까?

데이터베이스 테스트에 대해 이야기하기 전에 먼저 데이터베이스에 대해 간략히 설명하겠습니다.데이터베이스는 데이터 저장을 제공하고 데이터 조작을 돕는 체계적인 데이터 모음 일뿐입니다. 이러한 데이터베이스를 사용하면 데이터 관리가 매우 쉬워집니다.atabase는 데이터를 저장하기위한 테이블, 데이터 표현을위한보기, 함수 및 데이터 조작을위한 트리거와 같은 데이터 관리를위한 객체를 사용합니다.



지금,데이터베이스 테스팅은 데이터를 제어하는 ​​객체와이를 둘러싼 다양한 기능을 확인하여 데이터베이스에 저장되는 데이터를 검증하는 프로세스를 말합니다. 일반적으로 데이터 유효성 검사, 데이터 무결성 테스트, 성능 검사 관련, 데이터베이스의 다양한 절차, 트리거 및 기능 테스트와 같은 활동은 데이터베이스 테스트 중에 포함됩니다.

그러나 데이터베이스 테스트를 수행하기 위해서는 SQL에 대한 건전한 지식이 매우 중요합니다. 필요한 전문 지식이 없더라도 걱정하지 마세요. SQL 기초 시작합니다.

왜 데이터베이스 테스트인가?

아시다시피 데이터베이스는 데이터가 막대한 양으로 수집되고 구조화 된 형식으로 저장되는 데이터 덤프입니다. 이기는 하지만 (데이터베이스 관리 시스템)은 이러한 데이터를 관리, 검색 및 저장하는 체계적인 방법을 제공합니다. 데이터가 중복되거나 중복 될 수있는 경우가 있습니다. 이러한 경우 데이터베이스 테스트는 데이터 유효성 검사에 도움이됩니다. 아래에 데이터베이스의 유효성을 검사해야하는 다양한 측면을 나열했습니다.



  1. 데이터 매핑
    데이터 매핑은 애플리케이션과 백엔드 데이터베이스 사이를 오가는 데이터를 검증하는 데 초점을 맞춘 데이터베이스 테스트의 필수 요소입니다.
  2. ACID 속성 유효성 검사
    약자 tomicity, 끈기, 나는 솔 레이션 및 가능성. 이것은 각 데이터베이스 트랜잭션에 대해 확인해야하는 또 다른 중요한 측면입니다.

    • 원 자성 : 이는 모든 데이터베이스 트랜잭션이 원자적임을 의미합니다. 즉, 트랜잭션이 성공 또는 실패로 이어질 수 있습니다. 또한 ~으로 알려진 전부 아니면 전무 .
    • 일관성 : 이는 트랜잭션이 완료된 후에도 데이터베이스 상태가 유효 함을 의미합니다.
    • 격리 : 이는 서로 영향을 미치고 데이터베이스 상태를 변경하지 않고 여러 트랜잭션을 한 번에 실행할 수 있음을 의미합니다.
    • 내구성 : 일단 트랜잭션이 커밋되면 외부 요인의 영향에 관계없이 변경 사항이 오류없이 보존된다는 의미입니다.
  3. 데이터 무결성
    데이터베이스의 데이터 무결성 테스트는 데이터베이스 액세스, 관리 및 업데이트에 사용되는 모든 종류의 프로세스, 작업 및 방법을 평가하는 프로세스를 의미합니다. 잔인한 작업. 이것은 우리가 예상하거나 원하는 결과를 얻을 수 있도록 데이터베이스에 저장된 데이터의 정확성과 일관성을 테스트하는 데에만 집중합니다.
  4. 비즈니스 규칙 준수
    데이터베이스의 복잡성이 증가함에 따라 관계형 제약, 트리거, 저장 프로 시저 등과 같은 다양한 구성 요소도 복잡해지기 시작합니다. 이를 방지하기 위해 테스터는 복잡한 객체의 유효성을 검사하기에 충분한 SQL 쿼리를 제공합니다.

데이터베이스 테스트 유형

C ++에서 배열 정렬

아래에 나열된 세 가지 유형의 데이터베이스 테스트가 있습니다.

  1. 구조 테스트
  2. 기능 테스트
  3. 비 기능 테스트

이제 이러한 각 유형과 하위 유형을 하나씩 살펴 보겠습니다.

구조 테스트

구조적 데이터베이스 테스트는 데이터 저장소 내부에 존재하며 주로 데이터 저장에 사용되는 모든 요소를 ​​검증하는 프로세스입니다. 이러한 요소는 최종 사용자가 직접 조작 할 수 없습니다. 데이터베이스 서버 유효성 검사는 가장 중요한 고려 사항 중 하나이며이 단계를 성공적으로 완료하는 테스터는 SQL 쿼리에 대한 숙달을 획득합니다.

다양한 유형의 구조 테스트는 다음과 같습니다.

  • 스키마 테스트

이러한 유형의 테스트는 매핑 테스트라고도하며 프런트 엔드와 백 엔드의 스키마 매핑이 동기화되어 있는지 확인하기 위해 수행됩니다. 이 테스트의 몇 가지 중요한 체크 포인트는 다음과 같습니다.

    • 데이터베이스와 연관된 다양한 유형의 스키마 형식을 검증합니다.
    • 매핑되지 않은 테이블 / 뷰 / 열에 대한 확인이 필요합니다.
    • 또한 전체 애플리케이션 매핑이 포함 된 환경에서 이기종 데이터베이스의 일관성을 보장하기 위해 확인이 필요합니다.
    • 데이터베이스 스키마 유효성 검사를위한 다양한 도구를 제공합니다.
  • 데이터베이스 테이블 및 열 테스트

이 테스트의 중요한 체크 포인트는 다음과 같습니다.

    • 백 엔드 및 프런트 엔드에서 매핑되는 데이터베이스 필드 및 열의 호환성.
    • 요구 사항에 따라 데이터베이스 필드 및 열의 길이 및 명명 규칙을 확인합니다.
    • 사용되지 않거나 매핑되지 않은 데이터베이스 테이블 / 열을 감지하고 유효성을 검사합니다.
    • 백엔드 데이터베이스 열에서 애플리케이션의 프런트 엔드와 데이터 유형 및 필드 길이의 호환성을 검증합니다.
    • 사용자가 비즈니스 요구 사항 사양 문서에 지정된 데이터베이스 필드를 사용하여 원하는 입력을 제공 할 수 있는지 확인합니다.
  • 키 및 인덱스 테스트

이 테스트의 중요한 체크 포인트는 다음과 같습니다.

    • 필수 확인 기본 키 그리고 외래 키 제약 조건이 이미 필요한 테이블에 있습니다.
    • 외래 키의 참조를 확인합니다.
    • 두 테이블에서 기본 키와 해당 외래 키의 데이터 유형이 동일한 지 확인하십시오.
    • 명명 규칙에 따라 모든 키 및 인덱스의 이름을 확인합니다.
    • 필수 필드와 색인 크기 및 길이를 확인하십시오.
    • 비즈니스 요구 사항에 따라 필요한 테이블에서 클러스터형 인덱스 및 비 클러스터형 인덱스를 생성했는지 확인합니다.
  • 저장 프로 시저 테스트

이 테스트의 중요한 체크 포인트는 다음과 같습니다.

    • 테스트중인 애플리케이션의 모든 모듈에서 개발 팀이 모든 저장 프로 시저에 대해 필요한 코딩 표준 규칙, 예외 및 오류 처리를 채택했는지 확인합니다.
    • 테스트중인 애플리케이션에 필요한 입력 데이터를 적용하여 개발 팀이 모든 조건 / 루프를 처리했는지 확인합니다.
    • 개발 팀이 지정된 데이터베이스 테이블에서 데이터를 가져올 때마다 TRIM 작업을 제대로 적용했는지 확인합니다.
    • 저장 프로 시저를 수동으로 실행하여 필요한 출력이 생성되었는지 확인합니다.
    • 스토어드 프로 시저를 수동으로 실행하여 테스트중인 애플리케이션에서 지정한대로 테이블 필드가 업데이트되었는지 확인하십시오.
    • 저장 프로 시저를 실행하여 필수 트리거가 암시 적으로 호출되는지 확인합니다.
    • 사용하지 않는 저장 프로 시저를 감지하고 유효성을 검사합니다.
    • 데이터베이스 수준에서 Null 조건의 유효성을 검사합니다.
    • 모든 저장 프로 시저 및 함수가 테스트중인 빈 데이터베이스에서 실행되고 테스트되었는지 확인합니다.
    • 테스트중인 애플리케이션의 요구 사항에 지정된대로 스토어드 프로 시저 모듈의 전체 통합을 검증하십시오.
  • 트리거 테스트

이 테스트의 중요한 체크 포인트는 다음과 같습니다.

    • 트리거의 코딩 단계에서 필요한 코딩 규칙을 따르는 지 확인합니다.
    • 실행 된 트리거가 각 DML 트랜잭션에 필요한 조건을 충족하는지 확인합니다.
    • 트리거가 실행되면 데이터가 올바르게 업데이트되었는지 확인하십시오.
    • 테스트중인 애플리케이션의 업데이트, 삽입, 삭제 트리거 기능과 같은 기능을 검증합니다.
  • 데이터베이스 서버 검증

이 테스트의 중요한 체크 포인트는 다음과 같습니다.

예제가있는 Java의 pojo 클래스
    • 데이터베이스 서버 구성 유효성 검사비즈니스 요구 사항에 명시된대로.
    • 필수 사용자가 테스트중인 애플리케이션에 필요한 조치 레벨 만 수행하는지 확인하십시오.
    • 데이터베이스 서버가 비즈니스 요구 사항 스펙에서 허용되는 최대 사용자 트랜잭션 수의 요구 사항을 충족 할 수 있는지 확인하십시오.

기능 테스트

기능 데이터베이스 테스트는 최종 사용자가 수행하는 트랜잭션 및 작업이 비즈니스 사양을 충족하는지 확인하는 프로세스입니다.

다양한 유형의 기능 테스트는 다음과 같습니다.

  • 블랙 박스 테스트

블랙 박스 테스팅은 데이터베이스 통합을 검증하여 다양한 기능을 확인하는 프로세스를 말합니다. 여기서 테스트 케이스는 일반적으로 간단하며 함수에서 들어오고 나가는 데이터를 확인하는 데 사용됩니다. 원인-효과 그래프 기법, 경계 값 분석 및 동등성 분할과 같은 다양한 기법이 데이터베이스 기능을 테스트하는 데 사용됩니다. 일반적으로 초기 개발 단계에서 수행되며 다른 기능 테스트와 비교할 때 비용이 적게 듭니다. 그러나 일부 오류는 감지 할 수 없으며 프로그램을 얼마나 많이 테스트해야하는지에 대한 사양이없는 것과 같은 몇 가지 단점이 있습니다.

  • 화이트 박스 테스트

White Box Testing은 데이터베이스의 내부 구조와 관련이 있으며 사용자는 사양 세부 정보를 알지 못합니다. 이 테스트에는 데이터베이스 리팩토링을 지원하는 데이터베이스 트리거 및 논리적 뷰 테스트가 필요합니다. 또한 데이터베이스 기능, 트리거, 뷰, SQL 쿼리 등도 여기에서 테스트됩니다. 화이트 박스 테스트는 데이터베이스 테이블, 데이터 모델, 데이터베이스 스키마 등의 유효성을 검사하는 데 사용됩니다. 참조 무결성 규칙을 준수하고 데이터베이스 일관성을 확인하기 위해 기본 테이블 값을 선택합니다.조건 커버리지, 의사 결정 커버리지, 진술 커버리지 등과 같은 기술은 종종 화이트 박스 테스트를 수행하는 데 사용됩니다. 블랙 박스 테스트와 달리 코딩 오류를 쉽게 감지하여 데이터베이스에 존재하는 내부 버그를 제거 할 수 있습니다. 이러한 유형의 테스트의 유일한 단점은 SQL 문을 다루지 않는다는 것입니다.

비 기능 테스트

비 기능적 테스트는 부하 테스트, 스트레스 테스트를 수행하고 비즈니스 사양을 충족하는 데 필요한 최소 시스템 요구 사항을 확인하고 위험을 감지하고 데이터베이스 성능을 최적화하는 프로세스입니다.

비 기능 테스트의 주요 유형은 다음과 같습니다.

  • 부하 테스트

부하 테스트를 수행하는 주요 기능은 데이터베이스에서 실행중인 대부분의 트랜잭션이 성능에 미치는 영향을 확인하는 것입니다. 이 테스트에서는 테스터가 다음 조건을 확인해야합니다.

    • 원격에있는 여러 사용자의 트랜잭션을 실행하는 데 필요한 응답 시간은 얼마입니까?
    • 특정 레코드를 가져 오는 데 데이터베이스가 걸리는 시간은 얼마입니까?
  • 스트레스 테스트

스트레스 테스트는 시스템의 중단 점을 식별하기 위해 수행되는 테스트 프로세스입니다. 따라서이 테스트에서는 시스템이 실패 할 때까지 애플리케이션이로드됩니다.이 지점은 중단 점 데이터베이스 시스템의. 일반적으로 사용되는 스트레스 테스트 도구는 다음과 같습니다. LoadRunner WinRunner .

자바에 대한 경로를 설정하는 방법

이제 데이터베이스 테스트와 관련된 다양한 단계를 살펴 보겠습니다.

데이터베이스 테스트 단계

DB 테스트는 지루한 프로세스가 아니며 테스트 프로세스에 따라 데이터베이스 테스트 라이프 사이클의 다양한 단계를 포함합니다.

데이터베이스 테스트의 주요 단계는 다음과 같습니다.

  1. 테스트 전제 조건 설정
  2. 테스트 실행
  3. 테스트 상태 확인
  4. 결과 검증
  5. 보고서 통합 및 게시

이제 데이터베이스 테스트가 무엇이며 어떻게 수행하는지 알게되었으므로 데이터베이스 테스트에 주로 사용되는 다양한 도구에 대해 간략하게 설명하겠습니다.

데이터베이스 테스트 도구

시장에는 테스트 데이터를 생성하고 관리하고 마지막으로로드 테스트 및 회귀 테스트와 같은 데이터베이스 테스트를 수행하는 데 사용되는 수많은 도구가 있습니다. 아래에 가장 선호되는 도구 몇 가지를 나열했습니다.

범주 도구
데이터 보안 도구
  • IBM Optim 데이터 개인 정보 보호
부하 테스트 도구
  • 웹 성능
  • Rad보기
  • 수은
테스트 데이터 생성기 도구
  • 데이터 팩토리
  • DTM 데이터 생성기
  • 터보 데이터
테스트 데이터 관리 도구
  • IBM Optim 테스트 데이터 관리
단위 테스트 도구
  • SQLUnit
  • TSQLUnit
  • DBFit
  • DBUnit

이것이 데이터베이스 테스트에 관한 것입니다. 이것으로이 기사를 마치고 자합니다. 이 기사가 지식에 가치를 더하는 데 도움이 되었기를 바랍니다. SQL 또는 데이터베이스에 대한 자세한 내용은 여기에서 포괄적 인 읽기 목록을 참조 할 수 있습니다. .

MySQL에 대한 구조화 된 교육을 받으려면 다음을 확인하십시오. 강사 주도의 라이브 교육 및 실제 프로젝트 경험과 함께 제공됩니다. 이 교육은 MySQL을 심도있게 이해하고 주제에 대한 숙달을 달성하는 데 도움이됩니다.

질문이 있으십니까? ”의 댓글 섹션에 언급하십시오. 데이터베이스 테스트 ”그러면 다시 연락 드리겠습니다.