KR102020798B1 - 자동화 테스트 수행 방법 및 시스템 - Google Patents

자동화 테스트 수행 방법 및 시스템 Download PDF

Info

Publication number
KR102020798B1
KR102020798B1 KR1020150186592A KR20150186592A KR102020798B1 KR 102020798 B1 KR102020798 B1 KR 102020798B1 KR 1020150186592 A KR1020150186592 A KR 1020150186592A KR 20150186592 A KR20150186592 A KR 20150186592A KR 102020798 B1 KR102020798 B1 KR 102020798B1
Authority
KR
South Korea
Prior art keywords
test
automated
agent
service system
test agent
Prior art date
Application number
KR1020150186592A
Other languages
English (en)
Other versions
KR20170076391A (ko
Inventor
김재홍
김선득
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to KR1020150186592A priority Critical patent/KR102020798B1/ko
Publication of KR20170076391A publication Critical patent/KR20170076391A/ko
Application granted granted Critical
Publication of KR102020798B1 publication Critical patent/KR102020798B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2247Verification or detection of system hardware configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명의 일 실시예에 따른 테스트 시스템의 자동화 테스트 수행 방법은, 제1 테스트 에이전트가, 서비스 시스템에 대한 자동화 테스트를 실행하는 단계와 상기 제1 테스트 에이전트의 자동화 테스트 결과, 상기 서비스 시스템 상에 에러가 존재하는 경우, 상기 제1 테스트 에이전트가 테스트 서버에 에러 메시지를 송신하는 단계와 상기 에러 메시지가 수신됨에 따라, 상기 테스트 서버가 제2 테스트 에이전트에 테스트 실행 명령을 송신하는 단계와 상기 테스트 실행 명령이 수신됨에 따라, 상기 제2 테스트 에이전트가 상기 서비스 시스템에 대한 자동화 테스트를 실행하는 단계와 상기 제2 테스트 에이전트가, 상기 제2 테스트 에이전트의 자동화 테스트 결과를 상기 테스트 서버에 송신하는 단계와 상기 제2 테스트 에이전트의 자동화 테스트 결과가 수신됨에 따라, 상기 테스트 서버가 상기 서비스 시스템 상의 에러 존재 여부를 판단하는 단계를 포함할 수 있다.

Description

자동화 테스트 수행 방법 및 시스템{Method and System for performing automated test}
본 발명은 자동화 테스트 수행 방법 및 시스템에 관한 것이다. 보다 자세하게는, 테스트 시스템이 자동화 테스트를 수행하는 방법 및 상기 테스트 시스템에 관한 것이다.
특정 서비스 시스템 상의 에러를 탐지하기 위하여 테스팅 시스템이 이용되고 있다. 시스템 상의 에러는, 특정 서비스 시스템을 이용하기 위한 소프트웨어의 오작동 또는 이러한 소프트웨어가 설치된 하드웨어의 오작동으로 인하여 발생할 수 있다.
이와 같은 에러 상황을 탐지에 있어서, 테스트 시스템은 실제로 특정 서비스 시스템 상에 에러가 발생한 경우뿐만 아니라, 특정 소프트웨어나 하드웨어가 환경적 요인에 따라 일시적으로 에러를 일으키는 경우에도 특정 서비스 시스템 상에 에러 상황이 발생한 것으로 판단한다. 즉, 일반적으로, 테스트 시스템은 환경적 요인에 의한 에러를 시스템 상의 실제 에러로 감지한다.
이 같은 경우, 특정 서비스 시스템 상에 실제 에러가 존재하지 않음에도 관리자가 서비스 상태를 확인하고, 에러의 원인을 찾아 수정하거나 특정 서비스 시스템을 재부팅시켜야 하는 불편이 발생한다.
상기와 같은 문제점에도, 실제 에러 상황만을 선별하여 자동으로 서비스 시스템을 재부팅시키는 테스트 시스템은 제공되고 있지 않다.
한국등록특허 0897412 호
본 발명이 해결하고자 하는 기술적 과제는, 환경적 요인에 의해 발생하는 서비스 시스템에 대한 에러 탐지를 서비스 시스템에 대한 에러 알람 대상에서 배제시킬 수 있는 자동화 테스트 수행 방법 및 테스트 시스템을 제공하는 것이다.
구체적으로 본 발명이 해결하고자 하는 기술적 과제는, 테스트 에이전트를 이용하여 서비스 시스템에 대한 테스트를 수행한 결과를 다른 테스트 에이전트를 이용하여 검증함으로써, 환경적 요인에 의한 서비스 시스템에 에러가 탐지된 경우를 실제 서비스 시스템의 에러 발생 상황과 구별할 수 있는 자동화 테스트 수행 방법 및 테스트 시스템을 제공하는 것이다.
본 발명이 해결하고자 하는 다른 기술적 과제는, 자동화 테스트를 수행한 테스트 에이전트가 자동으로 재부팅되도록 하여, 환경적 요인을 제거한 후 자동화 테스트를 다시 수행할 수 있는 테스트 시스템을 제공하는 것이다.
본 발명이 해결하고자 하는 또 다른 기술적 과제는, 서비스 시스템 상에 에러가 없는 경우에는, 복수의 테스트 에이전트 중, 하나의 테스트 에이전트는 에러 검사를 계속 실행하되, 다른 테스트 에이전트는 대기 모드를 유지하도록 하는 테스트 시스템을 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해 될 수 있을 것이다.
상기 기술적 과제를 해결하기 위한 테스트 시스템의 자동화 테스트 수행 방법은, 제1 테스트 에이전트가, 서비스 시스템에 대한 자동화 테스트를 실행하는 단계와 상기 제1 테스트 에이전트의 자동화 테스트 결과, 상기 서비스 시스템 상에 에러가 존재하는 경우, 상기 제1 테스트 에이전트가 테스트 서버에 에러 메시지를 송신하는 단계와 상기 에러 메시지가 수신됨에 따라, 상기 테스트 서버가 제2 테스트 에이전트에 테스트 실행 명령을 송신하는 단계와 상기 테스트 실행 명령이 수신됨에 따라, 상기 제2 테스트 에이전트가 상기 서비스 시스템에 대한 자동화 테스트를 실행하는 단계와 상기 제2 테스트 에이전트가, 상기 제2 테스트 에이전트의 자동화 테스트 결과를 상기 테스트 서버에 송신하는 단계와 상기 제2 테스트 에이전트의 자동화 테스트 결과가 수신됨에 따라, 상기 테스트 서버가 상기 서비스 시스템 상의 에러 존재 여부를 판단하는 단계를 포함한다.
또한, 상기 기술적 과제를 해결하기 위한 자동화 테스트를 수행하는 테스트 시스템은, 서비스 시스템에 대한 자동화 테스트를 실행한 결과, 상기 서비스 시스템 상에 에러가 존재하는 경우, 테스트 서버에 에러 메시지를 송신하는 제1 테스트 에이전트와 상기 테스트 서버로부터 테스트 실행 명령이 수신됨에 따라, 상기 서비스 시스템에 대한 자동화 테스트를 실행하는 제2 테스트 에이전트와 상기 에러 메시지를 수신함에 따라, 상기 제2 테스트 에이전트에 상기 테스트 실행 명령을 송신하고, 상기 제2 테스트 에이전트의 자동화 테스트 결과를 수신함에 따라 상기 서비스 시스템 상의 에러 존재 여부를 판단하는 테스트 서버를 포함한다.
또한, 상기 기술적 과제를 해결하기 위한 서비스 서버는, 하나 이상의 프로세서와 제1 및 제2 테스트 에이전트로부터 자동화 테스트 결과를 수신하는 네트워크 인터페이스와 상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리와 상기 컴퓨터 프로그램 및 상기 자동화 데스트 결과에 대한 정보를 저장하는 스토리지를 포함하되, 상기 컴퓨터 프로그램은, 상기 제1 테스트 에이전트로부터, 상기 서비스 시스템에 대한 제1 자동화 테스트를 결과를 수신하는 오퍼레이션과 상기 제1 자동화 테스트 결과에 상기 서비스 시스템 상의 에러 정보가 포함된 경우, 상기 제2 테스트 에이전트에 테스트 실행 명령을 송신하는 단계와 상기 테스트 실행 명령에 따른 제2 자동화 테스트 결과가 상기 제2 테스트 에이전트로부터 수신되면, 상기 제2 자동화 테스트 결과를 기초로, 상기 서비스 시스템 상의 에러 존재 여부를 판단하는 오퍼레이션을 포함한다.
본 발명에 따르면, 서비스 시스템에 대한 테스트 에이전트의 테스트 결과를 검증할 수 있는 별도의 테스트 에이전트가 적용된 테스트 시스템을 제공받는 효과가 있다.
본 발명에 따르면, 자동화 테스트 결과 판단에 있어서, 환경적 요인으로 인한 서비스 시스템의 에러 상황을 배제함으로써, 서비스 시스템에 대한 에러 탐지의 정확성을 높일 수 있는 효과가 있다. 즉, 본 발명에 따르면, 서비스 시스템 에러 여부에 대한 탐지 오류를 최소화할 수 있다. 이로 인해, 탐지 오류 상황임에도 서비스 시스템의 관리자에게 에러 알람이 전송되거나 및 에러 수정 요청이 전송되는 횟수가 최소화될 수 있다.
도 1은 본 발명의 일 실시예에 따른 서비스 시스템과 테스트 시스템의 관계를 설명하기 위한 예시도이다.
도 2는 본 발명의 다른 실시예에서 따른 테스트 시스템의 구성도이다.
도 3은 본 발명의 또 다른 실시예에 따른 테스트 서버의 블록도이다.
도 4는 본 발명의 또 다른 실시예에 따른 테스팅 소프트웨어의 개념도이다.
도 5는 본 발명의 또 다른 실시예에 따른 자동화 테스트 수행 방법의 순서도이다.
도 6 및 도 7은 본 발명의 몇몇 실시예에서 참조되는 테스트 에이전트의 설치 환경에 대한 예시이다.
도 8은 본 발명의 몇몇 실시예에서 참조되는, 테스트 시스템에 따른 서비스 시스템에 대한 에러 판단의 정확도를 설명하기 위한 예시도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
도 1은 본 발명의 일 실시예에 따른 서비스 시스템과 테스트 시스템의 관계를 설명하기 위한 예시도이다. 특히, 도 1에서, 사용자가 사용자 단말(10)을 통해 서비스 시스템(20)과 통신하는 경우가 예로써 도시되었다. 도1 의 사용자 단말(10)은 서비스 시스템(20)과 통신이 가능한 컴퓨팅 장치이다. 여기에서 서비스 시스템(20)이란, 사용자 단말(10)에 특정 서비스를 제공하는 각종 서버, 소프트웨어를 포함하여 구성된 시스템이라고 가정한다. 또한, 서비스 시스템(20)의 각 구성 요소 역시 상호간 통신이 가능한 컴퓨팅 장치일 수 있다.
도 1에서 도시된 서비스 시스템(20)에 따르면, 서비스 시스템(20)은 웹 서버(30), VPN G/W(40)을 포함한다. 즉, 사용자 단말(10)은 웹 서버(30) 또는 VPN G/W(40)을 경유하여 원하는 서비스 제공자에게 연결될 수 있다. 또한, 서비스 시스템(20)은 CA(Certificate Authority) 서버(50), DB 서버(60), Radius 서버(70) 등 다양한 서버 장치를 포함할 수도 있다.
사용자 단말(10)이 웹 서버(30)을 경유하는 경우, 사용자 단말(10)은 서비스 제공자의 DB 서버(60)로부터 서비스를 제공받을 수 있으며, 필요에 따라 CA 서버(50)를 이용하여 인증서를 제공받을 수도 있다.
또한, 사용자 단말(10)이 VPN G/W(40)를 경유하는 경우, Radius 서버(70)는 사용자 단말(10)이 서비스 제공자에 접근 가능하도록 네트워크를 지원할 수 있다.
이와 같이 사용자 단말(10)이 서비스 시스템(20)에 연결되고, 서비스 제공자로부터 서비스 제공을 받는 경우, 사용자 단말(10)은 서비스 시스템(20)으로부터 서비스 제공 인터페이스를 제공 받기 위한 각종 프로그램을 다운로드 할 수 있다. 예를 들어, 사용자는 사용자 단말(10)을 통해 인터넷 뱅킹 서비스를 제공받는 경우, 각종 보안 모듈을 다운로드 받고, 이를 사용자 단말(10)에 설치할 수 있다.
테스트 시스템(100)은 사용자 단말(10)에 설치된 상기 각종 프로그램이 정상적으로 실행되는지 판단할 수 있다. 또한, 테스트 시스템(100)은 서비스 제공 과정에서 서비스 시스템(20)의 각 구성 요소가 원활하게 동작하는지 판단할 수도 있다. 즉, 테스트 시스템(100)은 네트워크 상의 각 서버 장치들 사이의 물리적인 연결 관계 및 이를 지원하는 소프트웨어가 정상 동작되는지 판단할 수 있다.
이를 위해, 일반적으로 테스트 시스템(100)은 자동화 테스트를 수행하는 테스트 에이전트와 상기 테스트 에이전트를 관리하는 테스트 서버로 구성될 수 있다. 도 1에서 테스트 시스템(100)이 사용자 단말(10)과 구분되어 도시되었으나, 테스트 시스템을 구성하는 상기 테스트 에이전트는 사용자 단말(10)에 설치될 수 있다.
예를 들어, 테스트 에이전트는 사용자 단말(10)에 설치되고, 상기 각종 프로그램 및 네트워크 상태에 대한 자동화 테스트를 실행할 수 있다. 또한, 테스트 서버는 테스트 에이전트로부터 상기 자동화 테스트 결과를 수신할 수 있다. 테스트 서버는 상기 수신한 자동화 테스트 결과를 기초로, 서비스 시스템(20) 상에 에러가 존재하는지 판단할 수 있다.
지금까지 하나의 테스트 에이전트가 사용자 단말(10)에 설치되는 경우에 대하여 설명하였다. 즉, 테스트 시스템(100)에 하나의 테스트 에이전트가 포함된 경우이다. 그러나, 본 발명의 다른 실시예에 따르면, 테스트 시스템(100)은 복수의 테스트 에이전트를 포함할 수도 있다. 또한, 상기 복수의 테스트 에이전트는 하나의 장치 또는 복수의 서로 다른 장치에 설치될 수도 있다.
또한, 테스트 시스템(100)은 도 1의 서비스 시스템(20) 상에 에러가 존재하는 경우뿐만 아니라 사용자 단말(10) 상에 에러가 존재하는지 판단할 수도 있다. 이점에서, 도 1에서 서비스 시스템(20)이 사용자 단말(10)과 별도의 구성 요소로 도시되었으나, 본 발명의 실시예에 따른 서비스 시스템은 사용자 단말(10) 및 도 1에 도시된 서비스 시스템(20)을 포함하는 개념으로 이해될 수 있다.
이하, 테스트 에이전트가 복수 개인 경우 테스트 시스템(100)의 구성에 대하여 도 2를 참조하여 설명하도록 한다. 도 2는 본 발명의 다른 실시예에서 따른 테스트 시스템의 구성도이다.
도 2를 참조하면, 테스트 시스템(100)은 테스트 에이전트(110, 120) 및 테스트 서버(200)을 포함할 수 있다. 여기에서 테스트 에이전트(110, 120)는 설치되는 물리 장치 또는 논리 장치에 따라 제1 테스트 에이전트(110) 및 제2 테스트 에이전트(120)로 구별될 수 있다.
제1 테스트 에이전트(110)는 도 1의 사용자 단말(10)에 설치되어 서비스 시스템에 대한 자동화 테스트(automated test)를 실행할 수 있다. 제1 테스트 에이전트(110)는 테스트 서버(200)로부터 테스트 실행 명령을 수신함에 따라 상기 자동화 테스트를 수행할 수 있다. 또는, 제1 테스트 에이전트(110)는 사용자 단말(10)이 도1에 도시된 서비스 시스템(20)에 연결되는 동작에 응답하여 테스트 서버(200)의 명령과 무관하게 상기 자동화 테스트를 실행할 수도 있다.
상기 자동화 테스트 실행 결과, 서비스 시스템에 에러가 존재하는 경우, 제1 테스트 에이전트(110)는 테스트 서버(200)에 에러 메시지를 송신할 수 있다. 본 발명의 실시예에 따르면, 에러 메시지 송신 후에, 제1 테스트 에이전트(110)는 자동으로 재부팅될 수 있다. 상기 제1 테스트 에이전트(110)가 추후, 다시 자동화 테스트를 실행할 경우를 대비하기 위함이다. 또는 제1 에이전트(110)는 테스트 서버(200)로부터 최종적으로 서비스 시스템에 에러가 있는 것으로 판단된 경우에 재부팅될 수도 있다.
또한, 제1 테스트 에이전트(110)는 테스트 서버(200)로부터 대기 모드 실행 명령을 수신하고, 대기 모드를 실행할 수도 있다. 여기에서 대기 모드란, 테스트 에이전트가 상기 서비스 시스템에 대한 자동화 테스트를 수행하지 않고 대기(stand-by) 중인 상태를 의미한다.
한편, 본 발명의 또 다른 실시예에 따르면, 제1 테스트 에이전트(110)는 미리 설정된 횟수만큼 자동화 테스트를 실행하고, 그럼에도 서비스 시스템에 에러가 존재하는 것으로 판단되면, 에러 메시지를 테스트 서버(200)에 송신할 수도 있다. 테스트 서버(200) 동작이 빈번히 일어나는 경우를 방지하기 위함이다.
제2 테스트 에이전트(120)는, 상기 사용자 단말(10)과 다른 장치에 설치되어 테스트 서버(200)로부터 테스트 실행 명령을 수신하고, 서비스 시스템에 대한 자동화 테스트를 실행할 수 있다. 특히, 제2 테스트 에이전트(120)는 서비스 시스템의 일부에 대하여 자동화 테스트를 실행할 수 있다. 예를 들어, 제1 테스트 에이전트(110)가 서비스 시스템의 구성 요소 전체에 대한 테스트를 실행한다면, 제2 테스트 에이전트(120)는 상기 서비스 시스템의 일부 구성요소에 대하여 자동화 테스트를 실행할 수 있다. 상기 일부 구성요소는 테스트 시스템(100)의 관리자에 의해 미리 설정될 수 있다. 이는 중복적으로 모든 서비스 시스템의 구성요소에 대하여 자동화 테스트를 실행하는 경우, 테스트 실행에 소요되는 시간 및 자원을 절약하기 위함이다.
한편, 상기 제2 테스트 에이전트(120)는 상기 테스트 서버(200)로부터 테스트 실행 명령을 수신하기 전까지는, 대기 모드를 실행할 수 있다. 즉, 제2 테스트 에이전트(120)는 대기 모드로 유지되다가, 상기 테스트 실행 명령을 수신함에 따라 활성화되고 자동화 테스트를 실행할 수 있다.
제2 테스트 에이전트(120)는 상기 자동화 테스트 실행에 따른 자동화 테스트 결과를 테스트 서버(200)에 송신할 수 있다. 상기 자동화 테스트 결과 송신 후, 제2 테스트 에이전트(120)는 다시 대기 모드를 실행할 수도 있다. 또한, 상기 자동화 테스트 결과 송신 후, 제2 테스트 에이전트(120)는 재부팅될 수도 있다.
테스트 서버(200)는 제1 테스트 에이전트(110)로부터 에러 메시지를 수신하면, 제1 테스트 에이전트(110)에 대기 모드 실행 명령을 송신하고, 제2 테스트 에이전트(120)에 테스트 실행 명령을 송신할 수 있다.
기존의 테스트 시스템(100)은 에러 메시지가 수신되면, 서비스 시스템에 에러가 존재하는 것으로 판단한다. 그러나, 제1 테스트 에이전트(110)의 자동화 테스트 결과, 서비스 시스템에 에러가 있는 것으로 판단되었더라도 실제 에러가 아닌 경우가 있을 수 있다. 예를 들어, 제1 테스트 에이전트(110)는 환경적인 요인에 의해 서비스 시스템이 비정상 상태인 것으로 판단하고, 에러 메시지를 생성하여 테스트 서버(200)에 송신할 수도 있다.
여기에서 환경적인 요인이란, 서비스 시스템 상의 소프트웨어 간 일시적인 충돌, 네트워크 일시적인 장애, 사용자 단말(10) 자체의 하드웨어 및/또는 소프트웨어 결함 등을 포함할 수 있다. 이러한, 환경적인 요인은 사용자 단말(10) 및 도 1의 서비스 시스템(20)에 종속적이다. 즉, 다른 장치가 도 1의 서비스 시스템(20)에 연결되어 서비스를 제공받는 경우에는 상기 환경적 요인이 작용하지 않을 수 있다. 다른 장치와 사용자 단말(10)의 하드웨어 및/또는 소프트웨어는 서로 다를 수 있기 때문이다. 또는 다른 장치가 도 1의 서비스 시스템(20)에 연결되는 시점 및/또는 환경 또한 사용자 단말(10)의 경우와 다를 수 있기 때문이다.
이와 같은 환경적 요인에 따라 제1 테스트 에이전트(110)가 서비스 시스템 상에 에러가 존재하는 것으로 판단한 경우, 다른 시점에 사용자 단말(10)이 도 1의 서비스 시스템(20)에 연결되거나, 환경이 변경되는 경우, 상기 에러는 치유될 수 있다.
이에 따라, 본 발명의 실시예에 따르면, 테스트 서버(200)는 제1 테스트 에이전트(110)로부터 에러 메시지가 수신되더라도, 서비스 시스템에 에러가 있는 것으로 판단하지 않고, 아래의 프로세스를 수행한다.
첫 번째로, 테스트 서버(200)는 제1 테스트 에이전트(110)의 자동화 테스트 실행을 중지 시키고, 제1 테스트 에이전트(110)가 대기 모드를 실행하도록 제어할 수 있다. 이에 따라 제1 테스트 에이전트(110)는 대기 모드를 실행하여, 서비스 시스템에 대한 자동화 테스트를 중단한다. 또는 제1 테스트 에이전트(110)는 자동으로 대기모드를 실행할 수도 있다.
이때, 테스트 서버(200)는 제1 테스트 에이전트(110)가 재부팅되도록 제어할 수 있다. 즉, 테스트 서버(200)는 제1 테스트 에이전트(110)로부터 에러 메시지가 수신되면, 제1 테스트 에이전트(110)에 재부팅 명령을 송신할 수 있다. 또는, 제1 테스트 에이전트(110)는 에러 메시지를 테스트 서버(200)에 송신한 후, 상기 테스트 서버(200)의 제어 없이 자동으로 재부팅 프로세스를 실행하여 재부팅될 수도 있다.
두 번째로, 테스트 서버(200)는 대기 모드인 제2 테스트 에이전트(120)에 테스트 실행 명령을 송신할 수 있다. 상술한 바와 같이, 제1 테스트 에이전트(110)가 테스트 서버(200)에 에러 메시지를 송신했더라도, 실제로 서비스 시스템에 에러가 존재하지 않을 수 있기 때문이다. 즉, 테스트 시스템(100)은 제1 테스트 에이전트(110)와 다른 환경에서 제2 테스트 에이전트(120)가 서비스 시스템에 대한 자동화 테스트를 실행하도록 함으로써 제1 테스트 에이전트(110)의 에러 메시지를 검증할 수 있다. 테스트 서버(100)는 상기 검증을 통해, 최종적으로 서비스 시스템 상에 에러가 존재하는지 판단할 수 있다.
제2 테스트 에이전트(120)가 서비스 시스템에 대한 자동화 테스트 결과가, 제1 테스트 에이전트(110)의 자동화 테스트 결과와 다른 경우, 테스트 서버(100)는 서비스 시스템에 에러가 존재하지 않는 것으로 판단할 수 있다. 즉, 제1 테스트 에이전트(110)가 서비스 시스템에 에러가 존재하는 것으로 판단하였으나, 제2 테스트 에이저트(120)의 자동화 테스트 결과 서비스 시스템에 에러가 존재하지 않는 경우이다. 이 경우, 테스트 서버(200)는 제1 테스트 에이전트(110)의 자동화 테스트 결과를 서비스 시스템 상의 환경적 요인에 따른 에러로 판단한다. 따라서, 테스트 서버(200)는 실제 서비스 시스템에 에러가 존재하지 않는 것으로 판단할 수 있다.
반면, 제2 테스트 에이전트(120)가 서비스 시스템에 대한 자동화 테스트 결과가, 제1 테스트 에이전트(110)의 자동화 테스트 결과와 동일한 경우, 테스트 서버(200)는 최종적으로 서비스 시스템 상에 에러가 존재하는 것으로 판단할 수 있다. 즉, 제1 테스트 에이전트(110)의 자동화 테스트 결과와 제2 테스트 에이전트(120)의 자동화 테스트 결과가 모두 환경적 요인이 아닌, 실제 서비스 시스템에 에러가 존재하는 것으로 판단한 경우이다.
도 3은 본 발명의 또 다른 실시예에 따른 테스트 서버의 블록도이다. 이하, 도 3을 참조하여, 테스트 서버(200)의 구조와 동작에 대하여 자세히 설명한다.
도 3을 참조하면, 테스트 서버(200)은 하나 이상의 프로세서(201), 제1 및 제2 테스트 에이전트로부터 자동화 테스트 결과를 수신하는 네트워크 인터페이스(202), 프로세서(201)에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리(203) 및 컴퓨터 프로그램 및 상기 자동화 데스트 결과에 대한 정보를 저장하는 스토리지(204)를 포함할 수 있다.
프로세서(201)는 테스트 서버(200)의 각 구성의 전반적인 동작을 제어한다. 프로세서(201)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 포함하여 구성될 수 있다. 또한, 프로세서(201)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 테스트 서버(200)는 하나 이상의 프로세서를 구비할 수 있다.
네트워크 인터페이스(202)는 테스트 서버(200)의 유무선 인터넷 통신을 지원한다. 또한, 네트워크 인터페이스(202)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 네트워크 인터페이스(202)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다.
네트워크 인터페이스(202)는 네트워크를 통해 외부 장치로부터 데이터를 송수신할 수 있다. 특히, 제1 및 제2 테스트 에이전트(110, 120)로부터 자동화 테스트 결과를 수신할 수 있다. 또한, 네트워크 인터페이스(202)는 상기 제1 및 제2 테스트 에이전트(110, 120)에 대기 모드 실행 명령, 재부팅 프로세스 실행 명령 및 테스트 실행 명령을 송신할 수도 있다.
메모리(103)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(103)는 본 발명의 실시예들에 따른 자동화 테스트 수행 방법을 실행하기 위하여 스토리지(104)로부터 하나 이상의 프로그램(105)을 로드할 수 있다. 도 3에서 메모리(203)의 예시로 RAM이 도시되었다.
스토리지(204)는 상기 하나 이상의 프로그램(205) 및 데이터(206)를 비임시적으로 저장할 수 있다. 도 2에서 상기 하나 이상의 프로그램(205)의 예시로 테스팅 소프트웨어가 도시되었다. 상기 데이터(206)는 예를 들어, 제1 및 제2 테스트 에이전트(110, 120)로부터 수신한 서비스 시스템에 대한 테스트 결과 정보일 수 있다.
스토리지(204)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.
다음으로, 도 4를 참조하여 상기 테스팅 소프트웨어(205)의 구성 및 기능에 대하여 자세히 설명한다. 도 4는 본 발명의 또 다른 실시예에 따른 테스팅 소프트웨어의 개념도이다.
도 4를 참조하면, 테스팅 소프트웨어(205)는 제1 테스트 에이전트 제어모듈(215), 제2 테스트 에이전트 제어모듈(225) 및 시스템 에러 판단부(235)를 포함할 수 있다.
테스트 서버(200)가 네트워크 인터페이스(202)를 통해, 제1 테스트 에이전트로부터 서비스 시스템에 대한 자동화 테스트를 결과를 수신하면, 테스팅 소프트웨어(205)는 제1 테스트 에이전트 제어모듈(215)을 통해, 제1 테스트 에이전트(110)의 동작을 제어할 수 있다. 즉, 테스팅 소프트에어(205)는 제1 테스트 에이전트 제어모듈(215)을 통해 테스트 실행 명령 및 대기 모드 실행 명령을 생성하고, 상기 명령들이 제1 테스트 에이전트(110)에 송신되도록 제어할 수 있다.
상기 제1 테스트 에이전트의 자동화 테스트 결과에 서비스 시스템 상의 에러 정보가 포함된 경우, 테스팅 소프트웨어(205)는 제2 테스트 에이전트(225)를 통해 제2 테스트 에이전트(120)의 동작을 제어할 수 있다. 즉, 상기 제2 테스트 에이전트(120)에 테스트 실행 명령이 송신되도록 제어할 수 있다.
제2 테스트 에이전트(120)의 자동화 테스트 결과가 수신되면, 이를 기초로, 테스팅 소프트웨어(205)는 시스템 에러 판단부(235)를 통해 서비스 시스템 상의 에러 존재 여부를 최종적으로 판단할 수 있다. 시스템 에러 판단부(235)는 상기 최종적인 판단 결과에 따라, 테스트 시스템 및/또는 서비스 시스템의 관리자에게 송신할 메시지를 생성할 수도 있다.
테스팅 소프트웨어(205)는 상기 구성요소 외에 본 발명의 실시예에 따른 방법을 수행하기 위한 다른 구성요소를 포함할 수도 있다.
상기, 도 4에 대한 설명에서, 제1 테스트 에이전트(110) 및 제2 테스트 에이전트(120)의 동작이, 테스트 서버(200)의 테스팅 소프트웨어(205)에 의해 제어되는 경우가 주로 설명되었다. 그러나, 본 발명의 다른 실시예에 따르면, 제1 테스트 에이전트(110) 및 제2 테스트 에이전트(120)는 테스트 서버(200)에 의해 제어되지 않고, 각각 설치된 장치 상에서 자동으로 테스트 실행 모드, 대기 모드, 재부팅 프로세스 등을 실행할 수도 있다.
이하, 도 5을 참조하여, 테스트 시스템(100)이 수행하는 자동화 테스트 수행 방법에 대하여 다시 한번 설명하도록 한다.
도 5는 본 발명의 또 다른 실시예에 따른 자동화 테스트 수행 방법의 순서도이다. 이하, 테스트 시스템(100)의 각 구성 요소가 자동화 테스트 수행 방법을 수행하는 경우를 설명한다.
도 5를 참조하면, 제1 테스트 에이전트(110)는, 서비스 시스템에 대한 자동화 테스트를 실행할 수 있다(S501). 제1 테스트 에이전트(110)는 서비스 시스템에 에러가 존재하는지 판단할 수 있고(S502), 상기 판단결과, 에러가 존재하지 않으면, 서비스 시스템에 대한 자동화 테스트를 계속 실행할 수 있다(S503).
반면, 상기 판단 결과, 서비스 시스템에 에러가 존재하는 경우, 제1 테스트 에이전트(110)는 테스트 서버(200)에 에러 메시지를 송신한다. 이때, 에러 메시지 송신에 앞서, 제1 테스트 에이전트(110)는 미리 설정된 횟수만큼 자동화 테스트를 반복할 수 있다. 즉, 제1 테스트 에이전트(110)는 미리 설정된 횟수만큼 자동화 테스트를 실행하였는데도 반복하여 서비스 시스템에 에러가 존재하는 것으로 판단된 경우에 상기 에러 메시지를 송신할 수도 있다.
상기 에러 메시지를 송신한 후, 제1 테스트 에이전트(110)는 재부팅 프로세스를 실행할 수도 있다. 재부팅 프로세스가 실행되어, 제1 테스트 에이전트(110)의 재부팅이 완료되면, 제1 테스트 에이전트(110)는 대기 모드를 실행할 수도 있다.
테스트 서버(200)는 상기 에러 메시지를 수신하고, 제2 테스트 에이전트(120)에 테스트 실행 명령을 송신한다(S504).
제2 테스트 에이전트(120)는 상기 테스트 실행 명령을 수신함에 따라, 서비스 시스템에 대한 자동화 테스트를 실행한다(S505). 제2 테스트 에이전트(120)는 상기 자동화 테스트 실행 결과를 테스트 서버(200)에 송신한다. 또한, 제2 테스트 에이전트(120)는 재부팅 프로세스를 실행하고, 재부팅 프로세스가 실행되어, 제2 테스트 에이전트(120)의 재부팅이 완료되면, 제2 테스트 에이전트(120)는 대기 모드를 실행할 수도 있다.
테스트 서버(200)는 제2 테스트 에이전트(120)의 자동화 테스트 결과가 수신됨에 따라, 서비스 시스템 상의 에러 존재 여부를 판단할 수 있다(S506). 이때, 테스트 서버(200)는 제2 테스트 에이전트(120)의 자동화 테스트 결과를 기초로 서비스 시스템 상의 에러 존재 여부를 판단할 수 있다.
또는, 본 발명의 다른 실시예에 따르면, 단계(S506)은 제2 테스트 에이전트(120)에 의해 수행될 수도 있다. 즉, 단계(S502)와 같이 자동화 테스트 결과, 서비스 시스템에 에러가 존재하는지 여부를 제2 테스트 에이전트(120)가 판단하고, 에러 메시지를 테스트 서버(200)에 송신할 수도 있다.
단계(S506)에서, 제2 테스트 에이전트(120)의 자동화 테스트 결과, 서비스 시스템에 에러가 존재하는 경우, 테스트 서버(200)는 서비스 시스템이 비정상 상태인 것으로 판단할 수 있다(S507). 즉, 제1 테스트 에이전트(110)의 자동화 테스트 결과, 서비스 시스템에 에러가 존재하는 것으로 판단되었는데, 제2 테스트 에이전트(120)의 자동화 테스트의 결과 역시 서비스 시스템의 에러 상태를 나타내는 경우, 테스트 서버(200)는 서비스 시스템에 에러가 존재하는 것으로 최종 판단할 수 있다.
반면, 제1 테스트 에이전트(110)의 자동화 테스트 결과, 서비스 시스템에 에러가 존재하는 것으로 판단되었는데, 제2 테스트 에이전트(120)의 자동화 테스트의 결과는 서비스 시스템이 정상 상태임을 나타내는 경우, 테스트 서버(200)는 서비스 시스템이 정상 상태인 것으로 최종 판단할 수 있다(S508).
도 6 및 도 7은 본 발명의 몇몇 실시예에서 참조되는 테스트 에이전트의 설치 환경에 대한 예시이다.
도 6은 제1 테스트 에이전트(110) 및 제2 테스트 에이전트(120)가 각기 별도의 장치에 설치된 경우의 예시이다. 도 6에서, 제1 테스트 에이전트(110)는 제1 단말(610)에 설치되었고, 제2 테스트 에이전트(120)는 제2 단말(620)에 설치되었다. 제1 단말(610)에 설치된 제1 테스트 에이전트(110)와 제2 단말(620)에 설치된 제2 테스트 에이전트(120) 및 테스트 서버(200)는 상술한 테스트 시스템(100)을 구성한다. 테스트 시스템(100)은 상술한 자동화 테스트 수행 방법을 수행한다.
도 7은 제1 테스트 에이전트(110) 및 제2 테스트 에이전트(120)가 하나의 단말 장치에 설치된 경우의 예시이다. 즉, 본 발명의 다른 실시예에 따르면, 제1 테스트 에이전트(110) 및 제2 테스트 에이전트(120)는 단말 장치(700)에서 별도의 논리 구조를 갖는 가상 장치1(730) 및 가상 장치2(740)에 각각 설치될 수 있다. 이를 위해, 단말 장치(700)의 하드웨어 자원(710)은 하이퍼바이저(Hypervisor)(720)에 의해 가상 장치1(730) 및 가상 장치2(740)에 할당된다.
이 경우, 제1 테스트 에이전트(110)는 가상 장치1(730)에서 서비스 시스템에 대한 자동화 테스트를 수행하고, 오류 메시지를 송신할 수 있다. 또한, 테스트 서버(200)로부터 대기 모드 실행 명령을 수신하여, 제1 테스트 에이전트(110)는 가상 장치1(730)에서 대기 모드를 실행할 수 있으며, 재부팅 프로세스 역시 가상 장치1(730)에서 수행할 수 있다. 제2 테스트 에이전트(120)는 또한 동일한 방식으로 가상장치2(740)에서 그 기능을 수행할 수 있다.
도 8은 본 발명의 몇몇 실시예에서 참조되는, 테스트 시스템에 따른 서비스 시스템에 대한 에러 판단의 정확도를 설명하기 위한 예시도이다. 특히, 도 8의 그래프(810)은 일반적인 테스트 시스템의 날짜 별 서비스 시스템 에러 판단 횟수를 나타낸다. 또한, 그래프(820)은 본 발명의 실시예에 따른 테스트 시스템(100)의 날짜 별 시스템 에러 판단 횟수를 나타낸다.
즉, 그래프(810) 및 그래프(820)은 각각 상술한 본 발명의 실시예를 설명된 테스트 시스템에 적용하기 전과 후의 서비스 시스템 에러 판단 현황을 나타낸다.
그래프(810) 및 그래프(820)을 참조하면, 테스트 시스템에 본 발명의 실시예를 적용하기 전 대비, 적용 후의 서비스 시스템 에러 판단 횟수가 현격하게 줄어들었음을 알 수 있다. 이는, 테스트 시스템이 서비스 시스템 에러 판단 시, 본 발명의 실시예의 도입에 따라 환경적 요인에 따른 에러 탐지 오류가 제거되었음을 나타낸다.
한편, 상기에서 테스트 에이전트 2개를 이용한 테스트 시스템에 대하여 주로 설명하였으나, 본 발명의 실시예는 이에 한정되는 것은 아니며, 테스트 시스템(100)의 관리 정책에 따라 3개 이상의 테스트 에이전트가 테스트 시스템에 적용될 수도 있다.
지금까지 첨부된 도면을 참조하여 설명된 본 발명의 실시예에 따른 방법들은 컴퓨터가 읽을 수 있는 코드로 구현된 컴퓨터프로그램의 실행에 의하여 수행될 수 있다. 상기 컴퓨터프로그램은 인터넷 등의 네트워크를 통하여 제1 컴퓨팅 장치로부터 제2 컴퓨팅 장치에 송신되어 상기 제2 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 제2 컴퓨팅 장치에서 사용될 수 있다. 상기 제1 컴퓨팅 장치 및 상기 제2 컴퓨팅 장치는, 서버 장치, 데스크탑 PC와 같은 고정식 컴퓨팅 장치, 노트북, 스마트폰, 태블릿 PC와 같은 모바일 컴퓨팅 장치를 모두 포함한다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다.

Claims (13)

  1. 삭제
  2. 제1 테스트 에이전트가, 서비스 시스템에 대한 자동화 테스트를 실행하는 단계;
    상기 제1 테스트 에이전트의 자동화 테스트 결과, 상기 서비스 시스템 상에 에러가 존재하는 경우, 상기 제1 테스트 에이전트가 테스트 서버에 에러 메시지를 송신하는 단계;
    상기 에러 메시지가 수신됨에 따라, 상기 테스트 서버가 제2 테스트 에이전트에 테스트 실행 명령을 송신하는 단계;
    상기 테스트 실행 명령이 수신됨에 따라, 상기 제2 테스트 에이전트가 상기 서비스 시스템에 대한 자동화 테스트를 실행하는 단계;
    상기 제2 테스트 에이전트가, 상기 제2 테스트 에이전트의 자동화 테스트 결과를 상기 테스트 서버에 송신하는 단계; 및
    상기 제2 테스트 에이전트의 자동화 테스트 결과가 수신됨에 따라, 상기 테스트 서버가 상기 서비스 시스템 상의 에러 존재 여부를 판단하는 단계를 포함하고,
    상기 테스트 서버가 제2 테스트 에이전트에 테스트 실행 명령을 송신하는 단계는,
    상기 테스트 서버가 상기 제1 테스트 에이전트에 대기 모드 명령을 송신하는 단계; 및
    상기 대기 모드 명령이 수신됨에 따라, 상기 제1 테스트 에이전트가 대기 모드를 실행하는 단계를 포함하는,
    테스트 시스템의 자동화 테스트 수행 방법.
  3. 제 2 항에 있어서,
    상기 제1 테스트 에이전트가 테스트 서버에 에러 메시지를 송신하는 단계는,
    상기 에러 메시지가 송신됨에 따라, 상기 제1 테스트 에이전트가 재부팅 프로세스를 실행하는 단계를 포함하고,
    상기 제1 테스트 에이전트가 대기 모드를 실행하는 단계는,
    상기 재부팅 프로세스가 실행됨에 따라 재부팅된 상기 제1 테스트 에이전트가 대기 모드를 실행하는 단계를 포함하는,
    테스트 시스템의 자동화 테스트 수행 방법.
  4. 제1 테스트 에이전트가, 서비스 시스템에 대한 자동화 테스트를 실행하는 단계;
    상기 제1 테스트 에이전트의 자동화 테스트 결과, 상기 서비스 시스템 상에 에러가 존재하는 경우, 상기 제1 테스트 에이전트가 테스트 서버에 에러 메시지를 송신하는 단계;
    상기 에러 메시지가 수신됨에 따라, 상기 테스트 서버가 제2 테스트 에이전트에 테스트 실행 명령을 송신하는 단계;
    상기 테스트 실행 명령이 수신됨에 따라, 상기 제2 테스트 에이전트가 상기 서비스 시스템에 대한 자동화 테스트를 실행하는 단계;
    상기 제2 테스트 에이전트가, 상기 제2 테스트 에이전트의 자동화 테스트 결과를 상기 테스트 서버에 송신하는 단계; 및
    상기 제2 테스트 에이전트의 자동화 테스트 결과가 수신됨에 따라, 상기 테스트 서버가 상기 서비스 시스템 상의 에러 존재 여부를 판단하는 단계를 포함하고,
    상기 제2 테스트 에이전트가 상기 서비스 시스템에 대한 자동화 테스트를 실행하는 단계는,
    상기 제2 테스트 에이전트가, 상기 테스트 실행 명령이 수신되기 전까지 대기 모드를 실행하되, 상기 테스트 실행 명령이 수신됨에 따라, 상기 자동화 테스트를 실행하는 단계를 포함하는,
    테스트 시스템의 자동화 테스트 수행 방법.
  5. 제 4 항에 있어서,
    상기 테스트 서버가 상기 서비스 시스템 상의 에러 존재 여부를 판단하는 단계는,
    상기 제2 테스트 에이전트의 자동화 테스트 결과, 상기 서비스 시스템 상에 에러가 존재하지 않는 경우, 상기 테스트 서버가 상기 서비스 시스템이 정상 상태인 것으로 판단하는 단계;
    상기 판단에 따라, 상기 테스트 서버가 상기 제1 테스트 에이전트에 테스트 실행 명령을 송신하는 단계; 및
    상기 테스트 실행 명령이 수신됨에 따라, 상기 제1 테스트 에이전트가 상기 서비스 시스템에 대한 자동화 테스트를 실행하는 단계를 포함하는,
    테스트 시스템의 자동화 테스트 수행 방법.
  6. 제 5 항에 있어서,
    상기 테스트 서버가 상기 서비스 시스템 상의 에러 존재 여부를 판단하는 단계는,
    상기 제2 테스트 에이전트의 자동화 테스트 결과, 상기 서비스 시스템 상에 에러가 존재하는 경우, 상기 테스트 서버가 상기 서비스 시스템 상에 에러가 존재하는 것으로 판단하는 단계; 및
    상기 판단에 따른 상기 서비스 시스템 상의 에러 정보를 관리자 단말에 송신하는 단계를 포함하는,
    테스트 시스템의 자동화 테스트 수행 방법.
  7. 제1 테스트 에이전트가, 서비스 시스템에 대한 자동화 테스트를 실행하는 단계;
    상기 제1 테스트 에이전트의 자동화 테스트 결과, 상기 서비스 시스템 상에 에러가 존재하는 경우, 상기 제1 테스트 에이전트가 테스트 서버에 에러 메시지를 송신하는 단계;
    상기 에러 메시지가 수신됨에 따라, 상기 테스트 서버가 제2 테스트 에이전트에 테스트 실행 명령을 송신하는 단계;
    상기 테스트 실행 명령이 수신됨에 따라, 상기 제2 테스트 에이전트가 상기 서비스 시스템에 대한 자동화 테스트를 실행하는 단계;
    상기 제2 테스트 에이전트가, 상기 제2 테스트 에이전트의 자동화 테스트 결과를 상기 테스트 서버에 송신하는 단계; 및
    상기 제2 테스트 에이전트의 자동화 테스트 결과가 수신됨에 따라, 상기 테스트 서버가 상기 서비스 시스템 상의 에러 존재 여부를 판단하는 단계를 포함하고,
    상기 제2 테스트 에이전트가, 상기 제2 테스트 에이전트의 자동화 테스트 결과를 상기 테스트 서버에 송신하는 단계는,
    상기 제2 테스트 에이전트의 자동화 테스트 결과가 수신됨에 따라, 상기 테스트 서버가, 상기 제2 테스트 에이전트에 대기 모드 명령을 송신하는 단계; 및
    상기 대기 모드 명령이 수신됨에 따라, 상기 제2 테스트 에이전트가 대기 모드를 실행하는 단계를 포함하는,
    테스트 시스템의 자동화 테스트 수행 방법.
  8. 제 7 항에 있어서,
    상기 제2 테스트 에이전트가, 상기 제2 테스트 에이전트의 자동화 테스트 결과를 상기 테스트 서버에 송신하는 단계는,
    상기 제2 테스트 에이전트의 자동화 테스트 결과가 송신됨에 따라, 상기 제2 테스트 에이전트가 재부팅 프로세스를 실행하는 단계를 포함하고,
    상기 제2 테스트 에이전트가 대기 모드를 실행하는 단계는,
    상기 재부팅 프로세스가 실행됨에 따라 재부팅된 상기 제2 테스트 에이전트가 대기 모드를 실행하는 단계를 포함하는,
    테스트 시스템의 자동화 테스트 수행 방법.
  9. 제1 테스트 에이전트가, 서비스 시스템에 대한 자동화 테스트를 실행하는 단계;
    상기 제1 테스트 에이전트의 자동화 테스트 결과, 상기 서비스 시스템 상에 에러가 존재하는 경우, 상기 제1 테스트 에이전트가 테스트 서버에 에러 메시지를 송신하는 단계;
    상기 에러 메시지가 수신됨에 따라, 상기 테스트 서버가 제2 테스트 에이전트에 테스트 실행 명령을 송신하는 단계;
    상기 테스트 실행 명령이 수신됨에 따라, 상기 제2 테스트 에이전트가 상기 서비스 시스템에 대한 자동화 테스트를 실행하는 단계;
    상기 제2 테스트 에이전트가, 상기 제2 테스트 에이전트의 자동화 테스트 결과를 상기 테스트 서버에 송신하는 단계; 및
    상기 제2 테스트 에이전트의 자동화 테스트 결과가 수신됨에 따라, 상기 테스트 서버가 상기 서비스 시스템 상의 에러 존재 여부를 판단하는 단계를 포함하고,
    제1 테스트 에이전트가, 서비스 시스템에 대한 자동화 테스트를 실행하는 단계는,
    상기 제1 테스트 에이전트의 자동화 테스트 결과, 상기 서비스 시스템 상에 에러가 존재하는 경우, 상기 제1 테스트 에이전트가 미리 설정된 횟수 만큼 자동화 테스트를 재실행하는 단계를 포함하고,
    상기 제1 테스트 에이전트가 테스트 서버에 에러 메시지를 송신하는 단계는,
    상기 자동화 테스트를 재실행한 결과, 상기 서비스 시스템 상에 에러가 존재하는 경우, 상기 제1 테스트 에이전트가 테스트 서버에 에러 메시지를 송신하는 단계를 포함하는,
    테스트 시스템의 자동화 테스트 수행 방법.
  10. 서비스 시스템에 대한 자동화 테스트를 실행한 결과, 상기 서비스 시스템 상에 에러가 존재하는 경우, 테스트 서버에 에러 메시지를 송신하는 제1 테스트 에이전트;
    상기 테스트 서버로부터 테스트 실행 명령이 수신됨에 따라, 상기 서비스 시스템에 대한 자동화 테스트를 실행하는 제2 테스트 에이전트; 및
    상기 에러 메시지를 수신함에 따라, 상기 제2 테스트 에이전트에 상기 테스트 실행 명령을 송신하고, 상기 제2 테스트 에이전트의 자동화 테스트 결과를 수신함에 따라 상기 서비스 시스템 상의 에러 존재 여부를 판단하는 테스트 서버를 포함하고,
    상기 제2 테스트 에이전트는, 상기 테스트 실행 명령이 수신되기 전까지 대기 모드를 실행하되, 상기 테스트 실행 명령이 수신됨에 따라, 상기 자동화 테스트를 실행하는,
    자동화 테스트를 수행하는 테스트 시스템.
  11. 제 10 항에 있어서,
    상기 제1 테스트 에이전트 및 상기 제2 테스트 에이전트는 각각 서로 다른 단말 장치에 설치되는,
    자동화 테스트를 수행하는 테스트 시스템.
  12. 제 10 항에 있어서,
    상기 제1 테스트 에이전트 및 상기 제2 테스트 에이전트는 각각 하나의 단말 장치 상의 서로 다른 가상 머신에 설치되는,
    자동화 테스트를 수행하는 테스트 시스템.
  13. 하나 이상의 프로세서;
    제1 및 제2 테스트 에이전트로부터 자동화 테스트 결과를 수신하는 네트워크 인터페이스;
    상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리; 및
    상기 컴퓨터 프로그램 및 상기 자동화 테스트 결과에 대한 정보를 저장하는 스토리지를 포함하되,
    상기 컴퓨터 프로그램은,
    상기 제1 테스트 에이전트로부터, 서비스 시스템에 대한 제1 자동화 테스트 결과를 수신하는 오퍼레이션;
    상기 제1 자동화 테스트 결과에 상기 서비스 시스템 상의 에러 정보가 포함된 경우, 상기 제2 테스트 에이전트에 테스트 실행 명령을 송신하는 단계;
    상기 테스트 실행 명령에 따른 제2 자동화 테스트 결과가 상기 제2 테스트 에이전트로부터 수신되면, 상기 제2 자동화 테스트 결과를 기초로, 상기 서비스 시스템 상의 에러 존재 여부를 판단하는 오퍼레이션을 포함하고,
    상기 제2 테스트 에이전트는, 상기 테스트 실행 명령이 수신되기 전까지 대기 모드를 실행하되, 상기 테스트 실행 명령이 수신됨에 따라, 상기 자동화 테스트를 실행하는,
    테스트 서버.
KR1020150186592A 2015-12-24 2015-12-24 자동화 테스트 수행 방법 및 시스템 KR102020798B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150186592A KR102020798B1 (ko) 2015-12-24 2015-12-24 자동화 테스트 수행 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150186592A KR102020798B1 (ko) 2015-12-24 2015-12-24 자동화 테스트 수행 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20170076391A KR20170076391A (ko) 2017-07-04
KR102020798B1 true KR102020798B1 (ko) 2019-09-16

Family

ID=59357422

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150186592A KR102020798B1 (ko) 2015-12-24 2015-12-24 자동화 테스트 수행 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR102020798B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4509549B2 (ja) * 2003-12-24 2010-07-21 株式会社日立製作所 ディスクアレイ装置、及びハードディスクドライブの診断方法
KR101352699B1 (ko) * 2011-11-30 2014-01-17 삼성에스디에스 주식회사 병렬 처리 기반의 가상 클러스터 컴퓨팅 시스템의 프로비저닝 방법 및 장치
JP5651171B2 (ja) * 2009-07-02 2015-01-07 シリコン イメージ,インコーポレイテッド コンピュータメモリテスト構造

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101235802B1 (ko) * 2006-03-24 2013-02-21 삼성전자주식회사 저장 매체, 그 저장 매체를 이용한 테스트 자동화 방법 및장치
KR100897412B1 (ko) 2006-11-09 2009-05-14 한국전자통신연구원 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여소프트웨어의 결함을 검출하는 자동화 시스템 및 그 방법
KR20140004495A (ko) * 2012-07-03 2014-01-13 삼성전자주식회사 응용프로그램의 자동 테스트 방법 및 그 전자 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4509549B2 (ja) * 2003-12-24 2010-07-21 株式会社日立製作所 ディスクアレイ装置、及びハードディスクドライブの診断方法
JP5651171B2 (ja) * 2009-07-02 2015-01-07 シリコン イメージ,インコーポレイテッド コンピュータメモリテスト構造
KR101352699B1 (ko) * 2011-11-30 2014-01-17 삼성에스디에스 주식회사 병렬 처리 기반의 가상 클러스터 컴퓨팅 시스템의 프로비저닝 방법 및 장치

Also Published As

Publication number Publication date
KR20170076391A (ko) 2017-07-04

Similar Documents

Publication Publication Date Title
KR102158754B1 (ko) 스마트 네트워크 인터페이스 카드의 조작 방법 및 조작 장치
US9665452B2 (en) Systems and methods for smart diagnoses and triage of failures with identity continuity
US8782643B2 (en) Device and method for controlling communication between BIOS and BMC
US10042744B2 (en) Adopting an existing automation script to a new framework
US9268662B2 (en) Method and system for a high availability framework
US20160378602A1 (en) Pre-boot self-healing and adaptive fault isolation
US20160335151A1 (en) Systems and methods for providing service and support to computing devices
US20130138934A1 (en) Loading configuration information
CN109388569B (zh) 远程检测客户端环境异常的方法、测试服务器及存储介质
US20200310779A1 (en) Validating a firmware compliance policy prior to use in a production system
US9712382B2 (en) Retrieving console messages after device failure
US10275330B2 (en) Computer readable non-transitory recording medium storing pseudo failure generation program, generation method, and generation apparatus
US10102088B2 (en) Cluster system, server device, cluster system management method, and computer-readable recording medium
US11989548B2 (en) Pushing a firmware update patch to a computing device via an out-of-band path
US9465643B1 (en) Systems and methods for monitoring a primary operating system (OS) and/or migrating data using an OS hypervisor
US20160350132A1 (en) Systems and methods for exporting diagnostic data and securing privileges in a service operating system
US10628170B1 (en) System and method for device deployment
US9817735B2 (en) Repairing a hardware component of a computing system while workload continues to execute on the computing system
CN112751782B (zh) 基于多活数据中心的流量切换方法、装置、设备及介质
US9430306B2 (en) Anticipatory protection of critical jobs in a computing system
US8868750B2 (en) Information processing device, computer system and program
KR102020798B1 (ko) 자동화 테스트 수행 방법 및 시스템
CN108289114B (zh) 云端服务系统及处理云端服务异常的方法
WO2018135298A1 (ja) 情報処理装置および管理プログラム
US9176806B2 (en) Computer and memory inspection method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant