목차
📌 연계 테스트는 구축된 연계 시스템과 연계 시스템의 구성 요소가 정상적으로 동작하는지 확인하는 활동이다.
연계 시스템의 구성 요소에는 송/수신 모듈, 연계 서버, 모니터링 현황 등이 있다.
📌 연계 테스트 케이스 작성은 연계 시스템 간의 데이터 및 프로세스의 흐름을 분석하여 필요한 테스트 항목을 도출하는 과정이다.
💡 단위 테스트 : 모듈 안에 있는 개별적인 코드 단위가 정상적으로 작동하는지 확인하는 것을 의미한다.
💡 단순 개별 데이터의 유효값 확인 : 데이터 타입, 데이터 길이 필수 입력 여부 등이 기존에 정의된 데이터 입력 조건과 맞는지 확인하는 것이다.
💡 데이터 간 연관 관계 확인 : 사용자의 요청이 수신 시스템의 운영 DB에 등록되지 않은 데이터를 변경하거나 존재하지 않는 테이블에 데이터를 등록하는 경우 수행하는 점검 작업을 의미한다.
📌 연계 테스트 환경 구축은 테스트의 일정, 방법 절차, 소요 시간 등을 송/수신 기관과의 협의를 통해 결정하는 것이다.
📌 연계 테스트 수행은 연계 응용 프로그램을 실행하여 연계 테스트 케이스의 시험 항목 및 처리 절차 등을 실제로 진행하는 것이다.
📌 연계 테스트 수행 결과 검증은 연계 테스트 케이스의 시험 항목 및 처리 절차를 수행한 결과가 예상 결과와 동일한지를 확인하는 것이다.
📌 인터페이스 구현 검증은 인터페이스가 정상적으로 문제없이 작동하는지 확인하는 것이다.
💡 인터페이스 구현 검증과 감시의 차이점 : 인터페이스 구현 검증은 인터페이스의 입/출력 값이 예상과 일치하는지 확인하는것이고, 인터페이스 구현 감시는 구현된 인터페이스가 외부 시스템과 연결 모듈 사이에서 정상적으로 동작하는 지 확인하는 것이다.
도구 | 기능 |
xUnit | - 같은 테스트 코드를 여러 번 작성하지 않게 도와주고, 테스트마다 예상 결과를 기억할 필요가 없게 하는 자동화된 해법을 제공하는 단위 테스트 프레임워크이다. - smalltalk에 처음 적용되어 SUnit이라는 이름이었으나 Java의 JUnit, C++용의 CppUnit, .NET용의 NUnit, Http용 HttpUnit 등 다양한 언어에 적용되면서 xUnit 으로 통칭되고 있다. |
STAF (Software Testing Automation Framework) |
- 서비스 호출 및 컴포넌트 재사용 등 다양한 환경을 지원하는 테스트 프레임 워크이다. - 크로스 플랫폼, 분산 소프트웨어 테스트 환경을 조성할 수 있도록 지원한다. - 분산 소프트웨어의 경우 각 분산 환경에 설치된 데몬이 프로그램 테스트에 대한 응답을 대신하며, 테스트가 완료되면 이를 통합하고 자동화하여 프로그램을 완성한다. |
FitNesse | 웹 기반 테스트케이스 설계, 실행 결과 확인 등을 지원하는 테스트 프레임워크이다. |
NTAF (NHN Test Automation Framework) |
FitNesse의 장점인 협업 기능과 STAF의 장점인 재사용 및 확장성을 통합한 NHN(Naver)의 테스트 자동화 프레임 워크이다. |
Selenium | 다양한 브라우저 및 개발 언어를 지원하는 웹 애플리케이션 테스트 프레임 워크이다. |
watir | Ruby를 사용하는 애플리케이션 테스트 프레임 워크이다. |
💡 데몬(Daemon) : 사용자의 직접적인 개입 없이 특정 상태가 되면 자동으로 동작하는 시스템 프로그램이다.
💡 Ruby : 마츠모토 유키히로가 개발한 인터프리터 방식의 객체 지향 스크립트 언어입니다.
💡 인터프리터는 고급 언어로 작성된 프로그램을 한 줄 단위로 받아들어 번역하고, 번역과 동시에 프로그램을 한 줄 단위로 즉시 실행 시키는 프로그램이다.(Python, BASIC, SNOBOL, LISP, APL 등)
💡 컴파일러는 고급 언어로 작성된 프로그램 전체를 목적 프로그램으로 번역한 후, 링킹 작업을 통해 컴퓨터에서 실행 가능한 실행 프로그래을 생성한다.(C언어, Java 등)
💡 스카우터(Scouter) : 애플리케이션 및 OS 자원에 대한 모니터링 기능을 제공하는 오프소스 APM 소프트웨어이다.
💡 제니퍼(Jennifer) : 제니퍼는 애플리케이션의 개발부터 테스트 오픈, 운영, 안정화까지 전 단계에 걸쳐 성늘을 모니터링 하고 분석해주는 APM 소프트웨어이다.
💡 Nagios : 시스템 및 네트워크 모니터링 응용프로그램이다. 지정한 호스트와 서비스를 관찰하고 장애가 나거나 복구되었을 때 경보를 발령해준다. Nagios는 원래 Linux에서 실행되도록 디자인되어 졌음에도 불구하고 대부분의 다른 유닉스에서도 잘 작동한다.
💡 Cacti : SNMP 프로토콜을 사용하는 네트워크 모니터링 툴입니다. 관리 및 사용은 브라우저를 통해 이뤄지고, 모든 관리 데이터들은 MySQL을 이용하여 저장됩니다.
💡 Zabbix : 시스템 네트워크를 모니터링 할 수 있는 솔루션이며, 오픈 소스로 배포되고 있다.
💡 VisualVM : 여러 개의 VM을 동시 모니터링이 가능할 뿐만 아니라, profiling도 가능하고, eclipse 안에 embed 해서 사용할 수 도 있다.
🔔 예) 인터페이스 오류 발생 즉시 확인
오류 확인 방법 | 특징 |
오류 메시지 알람 표시 |
- 인터페이스 오류 발생 시 사용자 화면에 오류 메시지 창을 알람 형태로 표시한다. - 사용자는 오류 발생 즉시 알 수 있지만 관리자는 사용자를 통해야만 알 수 있다. |
오류 SMS발송 | - 오류 발생 시 자동으로 사용자와 관리자에게 SMS를 발송한다. - 사용자 관리자 모두 오류 발생 즉시 오류를 알 수 있다. |
오류 내역 이메일 발송 |
- 오류 발생 시 자동으로 사용자와 관리자에게 이메일을 발송한다. - 이메일을 확인해야 오류 발생 사실을 알 수 있다. |
🔔 예) 주기적인 인터페이스 오류 발생 확인
오류 확인 방법 | 특징 |
인터페이스 오류 로그 확인 |
- 인터페이스 오류 발생 시 관련 오류를 별도의 로그 파일로 생성하여 보관한다. - 자세한 오류 원인 및 내역을 확인할 수 있다. - 오류 로그 파일은 시스템 관리자나 운영자만 확인이 가능하다. |
인터페이스 오류 테이블 확인 |
- 인터페이스 관련 테이블에 오류 사항을 기록한다. - 오류 사항의 확인이 쉬워 운영자가 관리하기 용이하다. - 오류 사항이 구체적이지 않아 별도의 분석이 필요한 경우가 있다. |
인터페이스 감시 (APM)도구 사용 |
- 스카우터(Scouter)나 제니퍼(Jennifer) 등의 인터페이스 감시 도구를 사용하여 주기적으로 오류 발생 여부를 확인한다. - 인터페이스의 전반적인 상황을 확인할 수 있다. |
💡 로그 파일(Log File) : 컴퓨터 시스템의 모든 실행 내역을 수집하여 기록하는 파일을 의미한다.
💡 스카우터(Scouter) : 애플리케이션 및 OS 자원에 대한 모니터링 기능을 제공하는 오픈소스 APM 소프트웨어이다.
💡 APM(Application Performance Management/Monitoring) : APM은 애플리케이션의 성능 관리를 위해 접속자, 자원 현황, 트랜잭션 수행 내역, 장애 진단 등 다양한 모니터링 기능을 제공하는 도구를 의미한다.
💡 제니퍼(Jennifer) : 제니퍼는 애플리케이션의 개발부터 테스트 오픈, 운영, 안정화까지 전 단계에 걸쳐 성능을 모니터링 하고 분석해주는 APM 소프트웨어이다.
📌 인터페이스 오류 처리 보고서는 인터페이스 작동 시 발생하는 오류의 발생 및 종료 시점, 원인 및 증상, 처리사항 등을 정리한 문서이다.
보고 시기 | 특징 |
최초 발생 시 | - 인터페이스 오류 발생 상황을 인지하면 신속하게 조직에 보고하고 대응 조직을 만든다. - 오류 발생 구간 및 시점, 영향도 등을 간이 보고서, 이메일, SMS 등으로 보고한다. |
오류 처리 경과 시 | 오류 처리 진행 상황과 오류에 관한 공지사항 등록 등을 보고한다. |
완료 시 | - 최종 조치 후 내부 조직과 고객사에 완료됐음을 보고한다. - 오류 발생 시점, 오류 처리 결과, 오류 재발 방지 대책 등 종합적인 내용을 보고한다. |
📌 [정보처리기사] 논리 데이터베이스 설계 - 데이터 모델의 구성 요소 : 개체(Entity)/속성(Attribute)/관계(Relationship) (3) | 2024.02.13 |
---|---|
📌 [정보처리기사] 논리 데이터베이스 설계/데이터 모델의 개념 (2) | 2024.02.13 |
📌 인터페이스 구현/인터페이스 예외 처리/인터페이스 보안 (0) | 2024.02.13 |
📌 인터페이스 구현 - 인터페이스 기능 구현 정의 (1) | 2024.02.08 |
📌 인터페이스 구현 - 모듈 연계를 위한 인터페이스 기능 식별/인터페이스 데이터 표준의 개요 (1) | 2024.02.08 |