웹 애플리케이션 테스트: 웹사이트 테스트 방법? 테스트 유형
⚡ 스마트 요약
웹 애플리케이션 테스트는 웹사이트 출시 전에 기능, 사용성, 인터페이스, 데이터베이스, 호환성, 성능, 보안 및 크라우드소싱 테스트를 통해 웹사이트를 검증하므로, 결함은 유료 사용자에게 공개되기 전에 스테이징 환경에서 발견됩니다.

웹 테스트 유형에 대한 자세한 내용을 살펴보기 전에, 먼저 웹 테스트가 무엇인지, 그리고 개발 주기에서 어떤 위치를 차지하는지 간단히 알아보겠습니다.
웹 애플리케이션 테스트란 무엇인가요?
웹 애플리케이션 테스트웹 애플리케이션 테스트 또는 웹사이트 테스트는 웹 애플리케이션이나 웹사이트를 일반 대중에게 공개하기 전에 잠재적인 버그를 확인하는 작업입니다. 웹 애플리케이션 테스트는 웹 애플리케이션이나 웹사이트의 기능, 사용성, 보안, 호환성 및 성능을 점검합니다.
이 단계에서는 웹 애플리케이션 보안, 사이트 기능, 장애인 및 일반 사용자의 접근성, 트래픽 처리 능력과 같은 문제를 점검합니다.
웹사이트는 하나의 프로그램이 아닙니다. HTML, CSS, 그리고 기타 요소들이 쌓여 만들어진 것입니다. Java브라우저의 스크립트, 그리고 더 API 그리고 서버에는 데이터베이스가 있습니다. 단독으로는 통과한 계층이라도 이웃 계층과 통신할 때 오류가 발생할 수 있으므로 웹 테스트에는 보완적인 기술이 필요합니다.
테스트해야 할 웹 애플리케이션 유형
기술을 선택하기 전에 먼저 현재 아키텍처를 파악해야 합니다. 아키텍처 구조는 결함이 집중되는 위치와 클라이언트와 서버 간의 작업 분담 방식을 결정합니다.
| 아키텍처 | 작동 방식 | 이것이 테스트에 미치는 영향은 무엇일까요? |
|---|---|---|
| 단일 페이지 애플리케이션 (SPA) | 한 번 로드된 후 전체 페이지 새로 고침 없이 뷰를 업데이트합니다. Gmail 이런 식으로 작동합니다. | 대부분의 로직은 브라우저로 전송됩니다. 초점은 여기에 있습니다. Java스크립트 상태, 동적 렌더링 및 클라이언트 측 세션. |
| 다중 페이지 애플리케이션(MPA) | 여러 페이지에 서로 다른 경로를 통해 접근했습니다. URLs는 서버 측에서 렌더링됩니다. 전자상거래 사이트와 뉴스 사이트에서 흔히 사용됩니다. | 탐색 경로가 다양해지면 모든 경로, 양식 및 리디렉션을 처음부터 끝까지 테스트해야 합니다. |
| 프로그레시브 웹 앱 (PWA) | 서비스 워커, 매니페스트 및 앱 셸을 사용하여 네이티브 앱처럼 실행됩니다. | 오프라인 동작, 오래된 캐시, 푸시 알림 및 설치 안내 메시지를 추가합니다. |
대부분의 제품은 이러한 패턴들을 혼합하여 사용합니다. 어떤 패턴인지 확인한 후 아래의 8가지 기법을 순서대로 적용해 보세요.
웹 애플리케이션 또는 웹사이트를 테스트하는 방법
소프트웨어 엔지니어링에서는 웹 테스트 요구 사항에 따라 다음과 같은 테스트 유형/기술을 수행할 수 있습니다.
각 기술은 수동으로 또는 스크립트를 통해 실행할 수 있으며, 이러한 선택이 보장 범위보다는 비용에 더 큰 영향을 미칩니다.
| 아래 | 수동 테스트 | 자동화 된 테스트 |
|---|---|---|
| 가장 적합 | 사용성 및 답사의 체크 무늬 | 회귀 테스트, 크로스 브라우저 테스트, 부하 테스트 |
| 반복 실행 시 속도 | 느리다; 노력이 매 주기마다 반복된다. | 빠릅니다. 해당 스위트 제품은 요청 시 언제든지 다시 시청할 수 있습니다. |
| 비용 프로필 | 초기에는 가격이 낮지만, 매 출시마다 가격이 상승합니다. | 초기 비용이 더 높고, 그 다음 스크립트 유지 관리 비용이 더 높습니다. |
1. 웹사이트 기능 테스트
웹사이트 기능 테스트 사용자 인터페이스, API, 데이터베이스 테스트, 보안 테스트, 클라이언트 및 서버 테스트, 기본 웹사이트 기능과 같은 여러 테스트 매개변수를 포함하는 프로세스입니다. 기능 테스트는 매우 편리하며 사용자가 수동 및 자동 테스트를 모두 수행할 수 있습니다. 이는 웹사이트의 각 기능의 기능을 테스트하기 위해 수행됩니다.
웹 테스트 활동에는 다음이 포함됩니다.
Test 모든 모래밭 귀하의 웹페이지가 제대로 작동하고 있는지, 깨진 링크가 없는지 확인하세요. 확인할 링크에는 다음이 포함됩니다.
- 나가는 링크
- 내부 링크
- Anchor 링크
- Mail링크로
테스트 양식 예상대로 작동하고 있습니다. 여기에는 다음이 포함됩니다.
- 양식의 스크립팅 검사가 예상대로 작동합니다. 예를 들어 사용자가 양식의 필수 필드를 채우지 않으면 오류 메시지가 표시됩니다.
- 기본값이 채워지고 있는지 확인하세요.
- 제출되면 양식의 데이터는 라이브 데이터베이스로 제출되거나 작동하는 이메일 주소에 연결됩니다.
- 더 나은 가독성을 위해 양식이 최적의 형식으로 지정되었습니다.
쿠키 테스트 예상대로 작동하고 있습니다. 쿠키는 웹사이트에서 주로 활성 사용자 세션을 기억하는 데 사용되는 작은 파일이므로 웹사이트를 방문할 때마다 로그인할 필요가 없습니다. 쿠키 테스트에는 다음이 포함됩니다.
- 테스트 쿠키(세션)는 캐시가 지워지거나 만료되면 삭제됩니다.
- 쿠키(세션)를 삭제하고 다음에 사이트를 방문할 때 로그인 자격 증명을 요청하는지 테스트하세요.
HTML 및 CSS 테스트 검색 엔진이 귀하의 사이트를 쉽게 크롤링할 수 있도록 하기 위함입니다. 여기에는 다음이 포함됩니다
- 구문 오류 확인
- Readable 색상 스키마
- 표준 준수. W3C, OASIS, IETF, ISO, ECMA 또는 WS-I와 같은 표준을 준수하는지 확인하세요.
비즈니스 워크플로 테스트– 여기에는 다음이 포함됩니다.
- 사용자가 일련의 웹 페이지를 거쳐 완료하도록 하는 엔드투엔드 워크플로/비즈니스 시나리오를 테스트합니다.
- 사용자가 예상치 못한 단계를 실행할 때 적절한 오류 메시지나 도움말이 웹 애플리케이션에 표시되도록 부정적인 시나리오도 테스트하세요.
사용할 수 있는 도구: QTP , IBM 합리적인 , Selenium
2. 사용성 테스트
사용성 테스트 이제 모든 웹 기반 프로젝트의 중요한 부분이 되었습니다. 그것은 될 수 있습니다 테스터에 의해 수행됨 너 같이 또는 소규모 포커스 그룹 웹 애플리케이션의 대상 고객과 유사합니다.
Test 사이트 카테고리:
- 사이트의 다른 페이지에 대한 메뉴, 버튼 또는 링크는 모든 웹페이지에서 쉽게 볼 수 있고 일관되어야 합니다.
Test 전에, 내용:
- 콘텐츠는 철자나 문법 오류 없이 읽을 수 있어야 합니다.
- 이미지가 있는 경우 "대체" 텍스트를 포함해야 합니다.
사용할 수 있는 도구: 초크마크, 콘텐츠스퀘어및 Clixpy
3. 인터페이스 테스팅
기능과 사용성이 검증되면, 그 하위 계층들이 서로 제대로 통신하는지 확인해야 합니다. 여기서 테스트해야 할 세 가지 영역은 애플리케이션, 웹, 그리고 데이터베이스 서버입니다.
- 어플리케이션: 테스트 요청은 데이터베이스에 올바르게 전송되고 클라이언트 측의 출력은 올바르게 표시됩니다. 오류가 있는 경우 애플리케이션에서 잡아야 하며 최종 사용자가 아닌 관리자에게만 표시되어야 합니다.
- 웹 서버: 테스트 웹 서버는 서비스 거부 없이 모든 애플리케이션 요청을 처리하고 있습니다.
- 데이터베이스 서버 : 데이터베이스로 전송된 쿼리가 예상한 결과를 제공하는지 확인하세요.
테스트 시스템 응답 언제 세 층 사이의 연결 (애플리케이션, 웹 및 데이터베이스) 확립할 수 없다 최종 사용자에게 적절한 메시지가 표시됩니다.
사용할 수 있는 도구: 라노렉스
4. 데이터베이스 테스팅
데이터베이스는 웹 애플리케이션의 중요한 구성 요소 중 하나이며 이를 철저히 테스트하려면 스트레스를 받아야 합니다. 테스트 활동에는 다음이 포함됩니다.
- 쿼리를 실행하는 동안 오류가 표시되는지 테스트
- Data Integrity 데이터베이스에서 데이터를 생성, 업데이트 또는 삭제하는 동안 유지됩니다.
- 쿼리의 응답 시간을 확인하고 필요한 경우 미세 조정하세요.
- 데이터베이스에서 검색된 테스트 데이터가 웹 애플리케이션에 정확하게 표시됩니다.
5. 호환성 테스트
호환성 테스트는 웹 애플리케이션이 다양한 기기에서 올바르게 표시되고 작동하는지 확인하는 작업입니다. 여기에는 다음이 포함됩니다.
브라우저 호환성 테스트: 다른 브라우저에서 동일한 웹사이트가 다르게 표시됩니다. 웹 애플리케이션이 브라우저 간에 올바르게 표시되는지 테스트해야 합니다. Java스크립트, AJAX 및 인증이 정상적으로 작동합니다. 또한 다음을 확인할 수도 있습니다. 모바일 브라우저 호환성.
버튼, 텍스트 필드 등과 같은 웹 요소의 렌더링은 Opera팅 시스템. 귀하의 웹사이트가 다양한 조합에 대해 제대로 작동하는지 확인하세요. Opera팅 시스템과 같은 Windows, Linux, Mac 및 브라우저와 같은 Firefox, 인터넷 익스플로러, 사파리 등
사용할 수 있는 도구: Dynatrace
6. 성능 테스트
이를 통해 사이트가 모든 부하 조건에서 정상적으로 작동하는지 확인할 수 있습니다. 테스트 활동에는 다음 사항들이 포함되지만 이에 국한되지는 않습니다.
- 다양한 연결 속도에 따른 웹사이트 애플리케이션 응답 시간
- 웹 애플리케이션의 로드 테스트를 통해 정상 및 최대 로드 시 동작 확인
- 웹 사이트에 스트레스 테스트를 하여 피크 시간에 정상 로드를 초과할 때 중단 지점을 결정합니다.
- 최대 부하로 인해 충돌이 발생하는지 테스트하고 이러한 이벤트에서 사이트를 어떻게 복구합니까?
- 로드 시간을 줄이기 위해 gzip 압축, 브라우저 및 서버 측 캐시와 같은 최적화 기술을 활성화하십시오.
사용할 수 있는 도구: Loadrunner, JMeter
7. 보안 테스트
보안 테스트 신용카드와 같은 민감한 고객 정보를 저장하는 전자상거래 웹사이트에 필수적입니다. 테스트 활동에는 다음이 포함됩니다.
- 보안 페이지에 대한 무단 액세스 테스트를 허용해서는 안 됩니다.
- 제한된 파일은 적절한 액세스 없이 다운로드할 수 없습니다.
- 장기간 사용자 활동이 없으면 확인 세션이 자동으로 종료됩니다.
- SSL 인증서를 사용하는 경우 웹사이트는 암호화된 SSL 페이지로 리디렉션되어야 합니다.
Intruder
Intruder 웹 애플리케이션과 기본 인프라에 숨어 있는 많은 약점을 찾아내는 데 도움이 되는 강력한 취약점 스캐너입니다. 업계 최고의 보안 검사, 지속적인 모니터링 및 사용하기 쉬운 플랫폼을 제공합니다. Intruder 모든 규모의 기업을 해커로부터 안전하게 보호합니다.
기능
- 동급 최고의 위협 보호 10,000번의 보안 검사
- 구성 약점, 누락된 패치, 애플리케이션 약점(예: SQL 주입 및 교차 사이트 스크립팅) 등을 확인합니다.
- 스캔 결과의 자동 분석 및 우선순위 지정
- 직관적인 인터페이스, 빠른 설정 및 첫 번째 스캔 실행
- 최신 취약점에 대한 사전 보안 모니터링
- AWS, Azure예산 및 Google Cloud 커넥터
- CI/CD 파이프라인과 API 통합
8. 군중 테스트
여러분은 소규모 사내 팀이 수행했을 테스트를 다수의 사람(크라우드)에게 맡기게 됩니다. 크라우드소싱 테스트는 흥미롭고 유망한 개념으로, 발견되지 않았던 많은 결함을 찾아내는 데 도움이 됩니다.
사용할 수 있는 도구: 군중 테스트 플랫폼
웹 애플리케이션 테스트 프로세스: 단계별 설명
이 여덟 가지 기법은 무엇을 확인해야 하는지 알려줍니다. 아래 과정은 이러한 기법들을 언제 실행해야 하는지 설명합니다.
- 요구사항을 수집하고 명확히 하세요. 애플리케이션이 수행해야 하는 기능과 동작 방식을 명확하게 나열하세요. 모호한 요구사항은 테스트 불가능한 결과를 초래하므로, 먼저 이를 해결해야 합니다. 이 단계를 통해 웹 테스트의 기반을 더욱 탄탄하게 다질 수 있습니다. 소프트웨어 테스팅 수명주기.
- 테스트 계획을 작성하세요. 어떤 기법을 적용할지, 누가 실행할지, 어떤 도구가 필요할지, 그리고 일정은 어떻게 될지 결정하세요. 계획은 로드맵이자 예상 소요 기간입니다.
- 테스트 케이스를 개발하세요. 각 요구사항을 구체적인 단계로 변환하고 예상 결과를 명시하여, 정상적인 사용자 경험과 사용자가 실수로 발생시킬 수 있는 부정적인 시나리오 모두를 포함시키세요.
- 테스트 환경을 설정하세요. 예산이 허용하는 한 최대한 유사한 환경에서 생산하십시오. 동일한 브라우저 및 운영 체제 조합, 유사한 데이터 용량, 현실적인 네트워크 속도를 사용하십시오.
- 테스트를 실행하세요. 테스트 케이스를 실행하고, 실제 결과와 예상 결과를 비교 기록하며, 오류가 재현되는 동안 스크린샷, 콘솔 출력 및 서버 로그를 캡처하십시오.
- 보고서 및 track개의 결함. 각 문제를 재현 단계와 우선순위와 함께 기록하고, 수정 후 다시 테스트하여 주변에 문제가 발생하지 않았는지 확인하십시오.
- 순환을 완성하세요. 테스트 내용, 발견 사항, 해결해야 할 문제, 개선해야 할 사항 등을 포함하는 테스트 요약 보고서를 작성한 후 배포 승인을 하십시오.
⚠️ 시험뿐만 아니라 일정도 계획하세요: 웹 테스트는 고된 작업이며, 마감 기한 압박이 가장 먼저 부딪히는 장애물입니다. 그 다음으로는 완료된 작업을 무효화하는 반복적인 코드 변경이 발생합니다. 2단계에서 모든 작업을 정의하고 이를 바탕으로 작업 차트를 작성하세요.

