인터페이스 보안·연계 테스트·구현 검증
인터페이스 인증·인가·암호화와 오류 처리를 확인하고 실제 연계 결과를 검증한다.
인터페이스 보안
| 영역 | 보호 방법 |
|---|---|
| 네트워크 | TLS, IPsec, VPN 등으로 전송 구간 보호 |
| 애플리케이션 | 인증, 권한 확인, 입력 검증, 키·토큰 관리 |
| 데이터 | 저장 데이터 암호화와 접근 통제 |
인증은 누구인지, 인가는 무엇을 허용할지 확인하는 과정이다. 암호화된 연결에서도 권한 검사는 필요하다. 서비스 계정에는 업무에 필요한 최소 권한을 부여하고 서버에서 검사한다.
DB 암호화의 API 방식은 응용 프로그램에서 호출하고, 플러그인 방식은 DB 서버에 모듈을 설치하며, TDE는 DBMS가 저장 영역을 투명하게 암호화한다. 전송 보호와 저장 보호의 적용 구간을 구분한다. SSL은 구형 계열이며 현재 전송 보호에는 TLS를 사용한다.
데이터와 오류 처리 검증
구문 검증은 XML·JSON 등의 형식이 올바른지, 의미 검증은 허용 코드·단위·업무 상태와 맞는지 확인한다. 개별 자료형이 맞아도 필드 사이의 배타·종속 조건을 어길 수 있다.
| 오류 | 확인·대응 |
|---|---|
| 데이터 형식·필수값 오류 | 해당 데이터를 반영하지 않고 오류 원인 확인 |
| 인증·권한 오류 | 접근을 차단하고 허용된 자격·권한 확인 |
| 통신 중단·시간 초과 | 이전 처리 결과를 확인한 뒤 제한적으로 재시도 |
| 업무 규칙 오류 | 현재 상태와 요청 의미를 대조 |
| 시스템 장애 | 장애 복구 후 처리 결과를 재확인 |
같은 요청을 재전송해도 업무가 중복 반영되지 않도록 요청 식별자와 중복 처리 정책을 둔다. 부분 성공은 레코드별 결과를 기록한다. 최대 ‘재시도’ 횟수와 최초 시도를 포함한 총 시도 횟수도 구분한다.
로그에는 인터페이스 ID, 요청 식별자, 처리 시각·단계·결과·오류 원인을 기록한다. 비밀번호·키·토큰은 기록하지 않고, 외부 입력의 줄바꿈 등은 기록 구조를 바꾸지 않도록 처리한다. 여러 서버의 로그는 시간대와 기준 시각도 확인한다.
소프트웨어 연계 테스트
명세 확인 → 환경·데이터 준비 → 송수신 실행 → 업무 반영·로그 확인 → 결함 수정·재시험 순서로 진행한다. 정상·경계·오류 입력, 중복 전송, 연결 중단, 권한 없는 호출을 포함한다.
건수만 같다고 데이터가 같은 것은 아니다. 송신 금액이 100·200·300이고 수신 금액이 100·200·200이면 모두 세 건이지만 합계와 값이 다르다. 명세에 필요한 식별자·필드값·합계를 함께 대조한다. A→B와 B→A는 별도 방향이므로 각각의 시험 기록이 필요하다.
구현 검증과 도구
| 도구 | 대표 용도 |
|---|---|
| xUnit | 언어별 단위 테스트 자동화 |
| STAF | 분산 환경 테스트 수행·자원 관리 자동화 |
| FitNesse | 협업을 통한 인수 테스트 |
| NTAF | FitNesse와 STAF를 활용한 테스트 자동화 |
| Selenium·watir | 웹 브라우저 동작 자동화 |
| APM | 실행 중 응답시간·오류·자원 상태 관찰 |
테스트 자동화 도구는 시험을 실행하고 결과를 비교하며, APM은 실행 상태를 관찰한다. 최종 검증에서는 설계 산출물·인터페이스 명세와 실제 기능, 데이터, 보안, 오류 처리 결과가 일치하는지 확인한다.