KR20120048350A - Automatic test system for micro controller unit and method thereof - Google Patents

Automatic test system for micro controller unit and method thereof Download PDF

Info

Publication number
KR20120048350A
KR20120048350A KR1020100109944A KR20100109944A KR20120048350A KR 20120048350 A KR20120048350 A KR 20120048350A KR 1020100109944 A KR1020100109944 A KR 1020100109944A KR 20100109944 A KR20100109944 A KR 20100109944A KR 20120048350 A KR20120048350 A KR 20120048350A
Authority
KR
South Korea
Prior art keywords
test
ttcn
mcu
target system
software
Prior art date
Application number
KR1020100109944A
Other languages
Korean (ko)
Other versions
KR101185542B1 (en
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 KR1020100109944A priority Critical patent/KR101185542B1/en
Publication of KR20120048350A publication Critical patent/KR20120048350A/en
Application granted granted Critical
Publication of KR101185542B1 publication Critical patent/KR101185542B1/en

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software

Landscapes

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

Abstract

PURPOSE: An automatic MCU(Micro Controller Unit) test system and a method thereof are provided to automatically test an MCU through a standardized automatic test method. CONSTITUTION: A software design information extracting unit(100) extracts design information about software. A TTCN-3(Testing and Test Control Notation-version 3) test system(200) generates a TTCN-3 test case by using the extracted software design information. The TTCN-3 test system compares a result value which is received from a target system to a prediction output value. The TTCN-3 test system determines a test result of the target system.

Description

마이크로컨트롤러유닛 테스트 자동화 시스템 및 그 방법{AUTOMATIC TEST SYSTEM FOR MICRO CONTROLLER UNIT AND METHOD THEREOF} AUTOMATIC TEST SYSTEM FOR MICRO CONTROLLER UNIT AND METHOD THEREOF

본 발명은 마이크로컨트롤러유닛(MCU) 테스트 자동화 방법에 관한 것으로서, 보다 상세하게는 실제 시스템에 가까운 테스트 환경을 구현하고 표준화된 자동화 테스트 방법을 통하여 자동으로 마이크로컨트롤러유닛(MCU)을 테스트하는 마이크로컨트롤러유닛(MCU) 테스트 자동화 시스템 및 그 방법에 관한 것이다. The present invention relates to a microcontroller unit (MCU) test automation method, and more particularly to a microcontroller unit for implementing a test environment close to a real system and automatically testing the microcontroller unit (MCU) through a standardized automated test method. (MCU) test automation system and method thereof.

최근 시스템 개발 단계에서 소프트웨어의 복잡도 증가로 인하여 테스트 실행 환경과 테스트 케이스 설계에 많은 시간과 노력이 필요하며, 테스트 단계에서 오류가 발생할 가능성도 높아지고 있다. Recently, due to the increased complexity of the software in the system development stage, a lot of time and effort is required in the test execution environment and test case design, and the possibility of errors in the test stage is also increasing.

이에 따라 시스템 개발 단계에서 소프트웨어 복잡도에 따른 오류 발생을 줄이고, 소프트웨어 재사용성을 향상시키기 위해서 소프트웨어 플랫폼과 개발환경의 표준화가 점차 이루어지고 있다. 그 결과로 인하여 소프트웨어 플랫폼과 개발환경의 표준화로 인해서 시스템 설계단계에서는 시간과 노력이 많이 줄어들었지만, 여전히 시스템을 검증하기 위한 테스트 단계에서는 많은 오류와 문제점을 발생시키며 테스트의 어려움을 겪고 있다. As a result, standardization of software platform and development environment is gradually progressed to reduce the occurrence of errors due to software complexity and improve software reusability at the system development stage. As a result, due to the standardization of the software platform and the development environment, the system design stage reduced time and effort much, but the test stage for verifying the system caused many errors and problems, and the test was difficult.

따라서 시스템을 안정적이고 효과적으로 테스트하기 위해서는 표준화된 자동화 테스트 기법이 절실히 요구되며, 또한 신뢰할 수 있고 효과적인 시스템 검정을 위해서는 보다 실제 시스템에 가까운 테스트 환경을 구성하는 것이 중요하다.Therefore, standardized automated test techniques are urgently needed to test the system stably and effectively, and it is important to construct a test environment closer to the real system for reliable and effective system verification.

따라서 본 발명이 해결하고자 하는 과제는 실제 시스템에 가까운 테스트 환경을 구현하고 표준화된 자동화 테스트 방법을 통하여 자동으로 마이크로컨트롤러유닛(MCU)을 테스트하는 마이크로컨트롤러유닛(MCU) 테스트 자동화 시스템 및 그 방법을 제공하는 것이다. Accordingly, an object of the present invention is to provide a microcontroller unit (MCU) test automation system and method for implementing a test environment close to a real system and automatically testing the microcontroller unit (MCU) through a standardized automated test method. It is.

이러한 과제를 해결하기 위한 본 발명의 한 실시예에 따르면, MCU 테스트 자동화 시스템은, 타겟 시스템에 포함된 MCU에 대한 테스트 자동화 시스템에 있어서, 표준화된 소프트웨어의 XML 파일을 분석하여 상기 소프트웨어에 대한 설계 정보를 추출하는 소프트웨어 설계 정보 추출부, 추출된 상기 소프트웨어 설계 정보를 이용하여 TTCN-3 테스트 케이스를 생성하고, 상기 타겟 시스템으로부터 수신된 결과 값을 상기 TTCN-3 테스트 케이스로부터 획득한 예상 출력 값과 비교하여 상기 타겟 시스템의 테스트 결과를 결정하는 TTCN-3 테스트 시스템, 그리고 상기 TTCN-3 테스트 시스템과 상기 타겟 시스템 사이에 연결되는 통신 인터페이스부를 포함한다. According to an embodiment of the present invention for solving this problem, the MCU test automation system, in the test automation system for the MCU included in the target system, by analyzing the XML file of the standardized software design information for the software Software design information extraction unit for extracting the TTCN-3 test case using the extracted software design information, and compares the result value received from the target system with the expected output value obtained from the TTCN-3 test case TTCN-3 test system for determining a test result of the target system, and a communication interface connected between the TTCN-3 test system and the target system.

상기 소프트웨어 설계 정보는 상기 소프트웨어 컴포넌트의 입출력 변수 및 상기 변수의 데이터 타입을 포함할 수 있다. The software design information may include an input / output variable of the software component and a data type of the variable.

상기 TTCN-3 테스트 시스템은, 추출된 상기 소프트웨어 설계 정보를 이용하여 TTCN-3 테스트 케이스를 생성하는 테스트 케이스 생성부, 그리고 상기 TTCN-3 테스트 케이스을 이용하여 상기 테스트 데이터에 대한 예상 출력 값을 획득하고, 상기 타겟 시스템에 테스트 데이터를 전달한 다음 상기 타겟 시스템으로부터 수신된 결과 값을 상기 예상 출력 값과 비교하여 상기 타겟 시스템의 적합성 여부를 결정하는 TTCN-3 테스터부를 포함할 수 있다. The TTCN-3 test system may include: a test case generator configured to generate a TTCN-3 test case using the extracted software design information; and using the TTCN-3 test case, obtain an expected output value of the test data; And a TTCN-3 tester configured to determine whether the target system is suitable by transmitting test data to the target system and then comparing the result value received from the target system with the expected output value.

상기 통신 인터페이스부는, 상기 TTCN-3 테스트 시스템과 연결되어 통신하는 소프트웨어 모듈, 그리고, 상기 타겟 시스템에 포함된 복수의 MCU에 각각 연결되어, 상기 소프트웨어 모듈을 통하여 통신을 수행하는 복수의 하드웨어 모듈을 포함할 수 있다. The communication interface unit includes a software module connected to and communicated with the TTCN-3 test system, and a plurality of hardware modules connected to a plurality of MCUs included in the target system to perform communication through the software module. can do.

상기 복수의 MCU는 서로 네트워크를 형성하며 내부 통신을 수행할 수 있다.The plurality of MCUs may form a network with each other and perform internal communication.

상기 복수의 MCU 중에서 적어도 하나는 내부 네트워크를 테스트 하기 위한 MCU일 수 있다. At least one of the plurality of MCUs may be an MCU for testing an internal network.

본 발명의 다른 실시예에 따르면, 타겟 시스템에 포함된 MCU에 대한 테스트 자동화 방법에 있어서, 표준화된 소프트웨어의 XML 파일을 분석하여 상기 소프트웨어에 대한 설계 정보를 추출하는 단계, 추출된 상기 소프트웨어 설계 정보를 이용하여 TTCN-3 테스트 케이스를 생성하는 단계, 상기 TTCN-3 테스트 케이스을 이용하여 테스트 데이터에 대한 예상 출력 값을 획득하는 단계, 상기 타겟 시스템에 상기 테스트 데이터를 전달한 다음 상기 타겟 시스템으로부터 결과 값을 수신하는 단계, 그리고 수신된 상기 결과 값을 예상 출력 값과 비교하여 상기 타겟 시스템의 테스트 결과를 결정하는 단계를 포함한다. According to another embodiment of the present invention, in the test automation method for the MCU included in the target system, extracting the design information for the software by analyzing the XML file of the standardized software, the extracted software design information Generating a TTCN-3 test case using the TTCN-3 test case; obtaining an expected output value for test data using the TTCN-3 test case; delivering the test data to the target system and then receiving a result value from the target system. And comparing the received result value with an expected output value to determine a test result of the target system.

이와 같이 본 발명에 따르면 내장형 시스템을 개발하는 단계에서 실제 시스템에 가깝게 테스트 환경을 구성하여 전체 시스템의 기능을 사전에 효과적으로 테스트 할 수 있다. 또한 테스트하기 위한 타켓 시스템은 실제 하드웨어로 구성되어 테스트 결과에 대한 신뢰도를 향상시킬 수 있으며, 실제 내장형 시스템과 같이 다수의 MCU를 유기적으로 테스트 할 수 있을 뿐 아니라 시스템 내부에서 사용되는 네트워크를 효과적으로 테스트 할 수 있다. As described above, according to the present invention, a test environment may be configured close to a real system at the stage of developing an embedded system to effectively test the function of the entire system in advance. In addition, the target system for testing is composed of real hardware to improve the reliability of the test results, and not only can test organically multiple MCUs like the actual embedded system, but also effectively test the network used inside the system. Can be.

그리고, 표준화된 소프트웨어 설계 문서를 통해서 테스트 케이스가 자동으로 생성되므로 테스트 환경 구축을 위한 시간과 노력을 감소시킬 수 있다.And, test cases are automatically generated through standardized software design documentation, reducing the time and effort required to build a test environment.

도 1은 본 발명의 실시예에 따른 마이크로컨트롤러유닛 테스트 자동화 시스템의 구성을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 TTCN-3 테스트 시스템의 구성을 나타낸 도면이다.
도 3은 본 발명의 실시예에 따른 통신 인터페이스의 구성을 나타낸 도면이다.
도 4는 본 발명의 실시예에 따른 마이크로컨트롤러유닛 테스트 자동화 방법을 설명하기 위한 순서도이다.
1 is a view for explaining the configuration of a microcontroller unit test automation system according to an embodiment of the present invention.
2 is a view showing the configuration of a TTCN-3 test system according to an embodiment of the present invention.
3 is a diagram illustrating a configuration of a communication interface according to an embodiment of the present invention.
Figure 4 is a flow chart for explaining a microcontroller unit test automation method according to an embodiment of the present invention.

첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.DETAILED DESCRIPTION Embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention.

도 1은 본 발명의 실시예에 따른 마이크로컨트롤러유닛 테스트 자동화 시스템의 구성을 설명하기 위한 도면이다. 도 1에 나타낸 것과 같이, 본 발명의 실시예에 따른 마이크로컨트롤러유닛 테스트 자동화 시스템은 소프트웨어 설계 정보 추출부(100), TTCN-3 테스트 시스템(200), 통신 인터페이스부(300) 및 타겟 시스템(400)을 포함하며, 표준화된 소프트웨어 설계 명세서를 바탕으로 실제 하드웨어를 이용하는HIL(Hardware In the Loop) 시스템으로 구현된다. 1 is a view for explaining the configuration of a microcontroller unit test automation system according to an embodiment of the present invention. As shown in FIG. 1, the microcontroller unit test automation system according to an exemplary embodiment of the present invention includes a software design information extracting unit 100, a TTCN-3 test system 200, a communication interface unit 300, and a target system 400. It is implemented as a Hardware In the Loop (HIL) system using real hardware based on standardized software design specification.

먼저, 소프트웨어 설계 정보 추출부(100)는 표준 소프트웨어 설계 명세서인 XML 파일을 분석하고, TTCN-3(Testing and Test Control Notation - Version 3) 표준형식의 테스트 케이스를 생성하기 위한 정보를 추출한다. TTCN-3은 통신 프로토콜과 웹 서비스의 테스트에 사용되는 프로그램 언어로서 프로토콜 적합성 시험 언어를 의미한다. First, the software design information extraction unit 100 analyzes an XML file that is a standard software design specification and extracts information for generating a test case of a TTCN-3 (Testing and Test Control Notation-Version 3) standard format. TTCN-3 is a programming language used for testing communication protocols and web services.

예를 들어, 테스트의 타겟이 차량용 마이크로컨트롤러유닛인 경우에는 소프트웨어 설계 정보 추출부(100)는 표준 소프트웨어 명세서인 AUTOSAR XML 파일을 분석하여 TTCN-3 표준형식의 테스트 케이스를 생성하기 위한 정보를 추출한다. For example, when the test target is a vehicle microcontroller unit, the software design information extracting unit 100 analyzes an AUTOSAR XML file, which is a standard software specification, and extracts information for generating a test case of a TTCN-3 standard format. .

TTCN-3 테스트 시스템(200)은 소프트웨어 설계 정보 추출부(100)로부터 XML 파일 정보를 수신하여 블랙박스 테스트를 위한 TTCN-3 테스트 케이스를 자동으로 생성한다. 그리고, TTCN-3 테스트 케이스를 이용하여 입력 값에 대한 예상 결과 값을 생성한다. TTCN-3 테스트 시스템(200)은 입력 값을 타겟 시스템(400)으로 송신하고, 타겟 시스템(400)으로부터 수행된 결과 값을 수신한다. 그리고, TTCN-3 테스트 시스템(200)은 타겟 시스템(400)으로부터 받은 결과 값과 예상 결과 값을 비교하여 타겟 시스템(400)의 테스트 합격 여부를 판단한다. The TTCN-3 test system 200 automatically receives the XML file information from the software design information extraction unit 100 and automatically generates a TTCN-3 test case for the black box test. The TTCN-3 test case is used to generate an expected result value for the input value. The TTCN-3 test system 200 transmits an input value to the target system 400 and receives a result value performed from the target system 400. In addition, the TTCN-3 test system 200 compares the result value received from the target system 400 with the expected result value, and determines whether the target system 400 passes the test.

통신 인터페이스부(300)는 TTCN-3 테스트 시스템(200)과 타겟 시스템(400)의 정보전달을 위한 것으로, 소프트웨어 모듈(310)과 복수의 하드웨어 모듈(320)을 포함한다. The communication interface 300 is for information transmission between the TTCN-3 test system 200 and the target system 400, and includes a software module 310 and a plurality of hardware modules 320.

도 1에서 보는 바와 같이 소프트웨어 모듈(310)은 TTCN-3 테스트 시스템(200)과 물리적으로 같은 시스템에 위치하며, 도 1에서는 동일한 PC 단말기에 설정되는 것으로 도시하였다. As shown in FIG. 1, the software module 310 is located in the same physical system as the TTCN-3 test system 200, and is illustrated in FIG. 1 as being set in the same PC terminal.

소프트웨어 모듈(310)은 복수의 하드웨어 모듈(320)을 통해서 타겟 시스템(400)에 포함된 복수의 MCU(410, 420a, 420b, … , 420n)를 제어할 수 있는 인터페이스를 제공한다. TTCN-3 테스트 시스템(200)과 소프트웨어 모듈(310)은 UDP/IP를 이용해 통신한다.The software module 310 provides an interface for controlling the plurality of MCUs 410, 420a, 420b,..., 420n included in the target system 400 through the plurality of hardware modules 320. The TTCN-3 test system 200 and the software module 310 communicate using UDP / IP.

복수의 하드웨어 모듈(320)은 USB를 통해서 소프트웨어 모듈(310)과 연결되며, 소프트웨어 모듈(310)로부터 명령 신호를 입력받아 대응되는 복수의 MCU(410, 420a, 420b, … , 420n)의 레지스터 또는 하드웨어적인 기능을 직접 제어한다. 도 1에 나타낸 것처럼 1개의 TTCN-3 테스트 시스템(200)은 1개의 소프트웨어 모듈(310)과 연결되며, 1개의 소프트웨어 모듈(310)은 복수의 하드웨어 모듈(320)과 연결된다. 하드웨어 모듈(320)은 타겟 시스템(400)에 포함되는 MCU 개수만큼 구성된다.The plurality of hardware modules 320 are connected to the software module 310 through a USB, and receive a command signal from the software module 310 registers of the plurality of MCU (410, 420a, 420b, ..., 420n) corresponding to Direct control of hardware functions. As shown in FIG. 1, one TTCN-3 test system 200 is connected to one software module 310, and one software module 310 is connected to a plurality of hardware modules 320. The hardware module 320 is configured by the number of MCUs included in the target system 400.

타겟 시스템(400)은 개발 중인 시스템을 기능을 사전에 테스트하기 위해서 제작된 간이 시스템으로서, 테스터의 신뢰성을 높이기 위해서 최대한 실제에 가까운 하드웨어로 구성한다. 타겟 시스템(400)은 실제 내장형 시스템처럼 다수의 MCU(410, 420a, 420b, … , 420n)로 구성되고, 복수의 MCU(410, 420a, 420b, … , 420n)들이 내부통신을 위해서 사용하는 내부 네트워크도 실제와 동일하게 구성된다. The target system 400 is a simplified system designed to test a function of a system under development in advance, and is configured with hardware as close as possible to increase the reliability of the tester. The target system 400 is composed of a plurality of MCUs 410, 420a, 420b, ..., 420n like an actual embedded system, and is used by the plurality of MCUs 410, 420a, 420b, ..., 420n for internal communication. The network is configured in the same way as in the real world.

또한, 타겟 시스템(400)에 포함되는 MCU는 1개의 COM TEST MCU(410)와 복수의 테스트용 MCU(420a, 420b, … , 420n)으로 구분되는데, COM TEST MCU(410)는 타겟 시스템(400)의 내부 네트워크를 테스트하기 위한 MCU이다. 여기서, 타겟 시스템(400)에 포함되는 복수의 MCU(410, 420a, 420b, … , 420n)들은 서로 Internal Network Bus 방식으로 네트워크를 형성하며 CAN 통신과 같이 내부 통신을 수행하며, 복수의 MCU(410, 420a, 420b, … , 420n)는 COM TEST MCU(410)를 통하여 데이터를 TTCN-3 테스트 시스템(200)으로 전달할 수 있다. In addition, the MCU included in the target system 400 may be classified into one COM TEST MCU 410 and a plurality of test MCUs 420a, 420b,..., 420n. The COM TEST MCU 410 may be a target system 400. MCU to test the internal network. Here, the plurality of MCUs 410, 420a, 420b,..., 420n included in the target system 400 form a network by an internal network bus method and perform internal communication such as CAN communication, and a plurality of MCUs 410. , 420a, 420b,..., 420n may transmit data to the TTCN-3 test system 200 through the COM TEST MCU 410.

이하에서는 Com Test MCU(410)에 대해서 더욱 상세히 설명한다. Hereinafter, the Com Test MCU 410 will be described in more detail.

많은 내장형 시스템들은 다수의 MCU를 포함하는 경우, 다수의 MCU들은 유기적으로 동작하는데, 각 MCU들은 서로간의 정보교환을 위해서 특정 내부 네트워크를 사용한다. 이때 내장형 시스템의 신뢰성을 향상시키기 위해서는 이러한 내부 네트워크를 효과적으로 테스트할 수 있는 방법이 필요하다.If many embedded systems include multiple MCUs, the multiple MCUs operate organically, with each MCU using a specific internal network to exchange information with each other. To improve the reliability of embedded systems, there is a need for effective testing of these internal networks.

Com Test MCU(410)는 TCP/IP, CAN, Flexeray와 같은 다양한 네트워크를 지원하도록 미리 설정되어 있으며, TTCN-3 테스트 시스템(200)은 타겟 시스템(400)의 내부 네트워크를 테스트하기 위해 네트워크의 종류와 테스트 패킷의 내용이 설정된 테스트 케이스를 실행시킴으로써 내부 네트워크를 실제 시스템과 같이 테스트 할 수 있다. Com Test MCU(410)는 TTCN-3 테스트 시스템(200)에서 신호를 받아 내부 네트워크를 테스트하기 위한 패킷을 생성하여 내부 네트워크에 전달하고, 필요에 따라서는 내부 네트워크 내의 트래픽을 분석한다. Com Test MCU 410 is preset to support various networks such as TCP / IP, CAN, Flexeray, TTCN-3 test system 200 is the type of network to test the internal network of the target system 400 You can test the internal network as if it were a real system by executing a test case with the contents of the and test packets. The Com Test MCU 410 receives a signal from the TTCN-3 test system 200, generates a packet for testing the internal network, delivers the packet to the internal network, and analyzes traffic in the internal network as necessary.

즉, 통신 인터페이스부(300)를 통해 네트워크의 종류와 패킷의 내용을 전달받는 Com Test MCU(410)는 수신받는 내용에 대응하는 패킷을 내부 네트워크로 연결되어 있는 다른 복수의 MCU(420a, 420b, … , 420n)로 전달한다. That is, the Com Test MCU 410 which receives the type of the network and the contents of the packet through the communication interface unit 300 may transmit a plurality of other MCUs 420a, 420b, …, 420n).

도 2는 본 발명의 실시예에 따른 TTCN-3 테스트 시스템의 구성을 나타낸 도면이다. 도 2와 같이 본 발명의 실시예에 따른 TTCN-3 테스트 시스템(200)은 테스트 케이스 생성부(210) 및 TTCN-3 테스터부(220)를 포함한다. 2 is a view showing the configuration of a TTCN-3 test system according to an embodiment of the present invention. As shown in FIG. 2, the TTCN-3 test system 200 includes a test case generator 210 and a TTCN-3 tester 220.

테스트 케이스 생성부(210)는 소프트웨어 설계 정보 추출부(100)로부터 추출된 소프트웨어 설계 정보인 소프트웨어 컴포넌트의 입출력 변수와 변수의 데이터 타입을 입력받고, 또한 각 데이터 타입의 등가 클래스를 입력받는다. 테스트 케이스 생성부(210)는 추출된 정보를 이용하여 경계 값 분석 테스트 케이스(boundary value analysis test case) 또는 등가 분할 테스트 케이스를 생성한다. 테스트 케이스 생성부(210)는 추출된 정보를 이용하여 페어와이즈 기법(pairwise testing) 또는 결정 테이블 기법 등을 활용하는 다양한 테스트 케이스 알고리즘을 생성한다.The test case generator 210 receives input / output variables and data types of variables of software components, which are software design information extracted from the software design information extractor 100, and receives equivalent classes of each data type. The test case generator 210 generates a boundary value analysis test case or an equivalent split test case using the extracted information. The test case generation unit 210 generates various test case algorithms using pairwise testing or decision table techniques using the extracted information.

생성된 테스트 케이스는 입력 정보만 포함하고 있으므로 테스트 케이스 알고리즘을 통하여 예상 출력 값을 출력한다. 그리고, 필요에 따라 마감 시간 등과 같은 부가 테스트 정보를 입력할 수 있다. Since the generated test case includes only input information, the expected output value is output through the test case algorithm. If necessary, additional test information such as a deadline may be input.

이와 같이 TTCN-3 테스트 케이스는 테스트 케이스 생성부(210)로부터 생성되며, TTCN-3 테스트 케이스를 입력받은 TTCN-3 테스터부(220)는 TTCN-3 테스트 케이스를 이용하여 MCU에 대한 테스트를 자동으로 수행한다. As such, the TTCN-3 test case is generated from the test case generator 210, and the TTCN-3 tester 220 which receives the TTCN-3 test case automatically tests the MCU using the TTCN-3 test case. To do it.

TTCN-3 테스터부(220)는 TTCN-3 테스트 컴포넌트(221), TTCN-3 코덱부(222) 및 인터페이스부(223)를 포함한다. The TTCN-3 tester unit 220 includes a TTCN-3 test component 221, a TTCN-3 codec unit 222, and an interface unit 223.

TTCN-3 테스트 컴포넌트(221)는 테스트 데이터, 즉 입력 값을 타겟 시스템(400)으로 송신하고 수행된 결과 값을 수신하여 테스트 결과의 합격 여부를 결정한다. TTCN-3 코덱부(222)는 TTCN-3 테스트 데이터(입력 값)를 송신하기 위하여 통신 프로토콜에 맞는 데이터 타입으로 인코딩하고, 또한 통신 프로토콜로부터 수신된 데이터, 즉 결과 값을 TTCN-3 데이터 타입으로 변화하는 역할을 담당한다. 인터페이스부(223)는 소프트웨어 모듈(310)과 정보교환을 위해서 UDP/IP 통신을 담당한다.The TTCN-3 test component 221 transmits test data, i.e., an input value, to the target system 400 and receives the performed result value to determine whether the test result has passed. The TTCN-3 codec unit 222 encodes a data type suitable for a communication protocol to transmit TTCN-3 test data (input value), and also converts data received from the communication protocol, that is, a result value into a TTCN-3 data type. Play a changing role. The interface unit 223 is responsible for UDP / IP communication for exchanging information with the software module 310.

도 3은 본 발명의 실시예에 따른 통신 인터페이스의 구성을 나타낸 도면이다. 도 3에 나타낸 것과 같이 본 발명의 실시예에 따른 통신 인터페이스부(300)은 1개의 소프트웨어 모듈(310)과 복수의 하드웨어 모듈(320)을 포함하며, 소프트웨어 모듈(310)은 통신 인터페이스(312), 타겟 코덱부(314) 및 컨트롤 인터페이스(316)를 포함한다. 3 is a diagram illustrating a configuration of a communication interface according to an embodiment of the present invention. As shown in FIG. 3, the communication interface 300 according to an embodiment of the present invention includes one software module 310 and a plurality of hardware modules 320, and the software module 310 includes the communication interface 312. The target codec unit 314 and the control interface 316 are included.

통신 인터페이스(312)는 TTCN-3 테스터부(220)와 소프트웨어 모듈(310) 간의 정보 전달을 위한 UDP/IP 통신을 담당한다. 타겟 코덱(314)는 TTCN-3 테스터부(220)로부터 수신 받은 정보를 적적할 타입에 맞게 디코딩하는 역할을 담당한다.The communication interface 312 is responsible for UDP / IP communication for transferring information between the TTCN-3 tester 220 and the software module 310. The target codec 314 is responsible for decoding the information received from the TTCN-3 tester 220 according to the appropriate type.

컨트롤 인터페이스(316)는 복수의 하드웨어 모듈(320)과 연결되어, 하드웨어 모듈(320)을 통해서 복수의 MCU(410, 420a, 420b, … , 420n)를 제어할 수 있는 인터페이스를 담당한다.The control interface 316 is connected to the plurality of hardware modules 320 and serves as an interface for controlling the plurality of MCUs 410, 420a, 420b,..., 420n through the hardware modules 320.

하드웨어 모듈(320)은 MCU를 제어 할 수 있는 물리적인 장치로써 소프트웨어 모듈(310)과는 USB로 연결된다. 하드웨어 모듈(320)은 타겟 시스템(400)의 MCU들과 1:1로 연결되어야 하기 때문에 MCU의 개수만큼 필요하다. 하드웨어 모듈(320)은 연결되어 있는 MCU의 레지스터를 읽고 쓸 수 있으며, 하드웨어적인 기능을 제어할 수 있다. 하드웨어 모듈(320)은 임베디드 시스템 개발 환경에서 시스템을 디버깅하는 JTAG(Joint Test Action Group) 또는 BDM(Background Debug Mode)과 같은 기능을 수행할 수 있다. 하드웨어 모듈(320)은 소프트웨어 모듈(310)과 USB로 연결되고, 고유의 VID(Vender ID) 및 PID(Product ID)를 통해서 연결되어 있는 MCU를 구분한다. 각각의 MCU는 표준 소프트웨어 설계서를 기반으로 적절한 하드웨어 모듈(320)에 물리적으로 연결되어야 한다.The hardware module 320 is a physical device capable of controlling the MCU and is connected to the software module 310 by USB. Since the hardware module 320 must be connected 1: 1 with the MCUs of the target system 400, the number of MCUs is required. The hardware module 320 may read and write registers of the connected MCU and control hardware functions. The hardware module 320 may perform a function such as Joint Test Action Group (JTAG) or Background Debug Mode (BDM) for debugging a system in an embedded system development environment. The hardware module 320 is connected to the software module 310 by USB, and distinguishes the MCU connected through the unique VID (Vender ID) and PID (Product ID). Each MCU must be physically connected to the appropriate hardware module 320 based on a standard software design.

도 4는 본 발명의 실시예에 따른 마이크로컨트롤러유닛(MCU) 테스트 자동화 방법을 설명하기 위한 순서도이다. 4 is a flowchart illustrating a microcontroller unit (MCU) test automation method according to an embodiment of the present invention.

도 4에 나타낸 것처럼, 소프트웨어 설계 정보 추출부(100)는 소프트웨어 설계 명세서인 XML 파일을 분석하여 상기 소프트웨어에 대한 설계 정보를 추출한다(S410). 그리고, TTCN-3 테스트 시스템(200)은 추출된 소프트웨어 설계 정보를 수신하고, 소프트웨어 설계 정보를 이용하여 TTCN-3 테스트 케이스를 생성한다(S420). As shown in FIG. 4, the software design information extraction unit 100 analyzes an XML file that is a software design specification and extracts design information about the software (S410). The TTCN-3 test system 200 receives the extracted software design information and generates a TTCN-3 test case using the software design information (S420).

TTCN-3 테스트 시스템(200)은 TTCN-3 테스트 케이스을 이용하여 입력 값에 해당하는 테스트 데이터에 대한 예상 출력 값을 생성한다(S430). 그리고, TTCN-3 테스트 시스템(200)은 타겟 시스템(400)에 테스트 데이터를 전달한 다음 타겟 시스템(400)으로부터 결과 값을 수신하게 된다(S440). The TTCN-3 test system 200 generates an expected output value for the test data corresponding to the input value by using the TTCN-3 test case (S430). The TTCN-3 test system 200 transmits test data to the target system 400 and then receives a result value from the target system 400 (S440).

그러면 TTCN-3 테스트 시스템(200)은 타겟 시스템(400)으로부터 수신된 결과 값을 TTCN-3 테스트 케이스을 이용하여 획득한 예상 출력 값과 비교하여 타겟 시스템(400)의 테스트 합격 여부를 결정한다(S450). Then, the TTCN-3 test system 200 compares the result value received from the target system 400 with the expected output value obtained by using the TTCN-3 test case to determine whether the target system 400 passes the test (S450). ).

이와 같이 본 발명의 실시예에 따르면 내장형 시스템을 개발하는 단계에서 실제 시스템에 가깝게 테스트 환경을 구성하여 전체 시스템의 기능을 사전에 효과적으로 테스트 할 수 있다. 테스트하기 위한 타켓 시스템은 실제 하드웨어로 구성되어 테스트 결과에 대한 신뢰도를 향상시킬 수 있으며, 실제 내장형 시스템과 같이 다수의 MCU를 유기적으로 테스트 할 수 있을 뿐 아니라 시스템 내부에서 사용되는 네트워크를 효과적으로 테스트 할 수 있다. As described above, according to the exemplary embodiment of the present invention, the test environment may be configured to be close to the real system at the stage of developing the embedded system to effectively test the function of the entire system in advance. The target system for testing is composed of real hardware to improve the reliability of the test results, and not only can organically test multiple MCUs like the actual embedded system, but also effectively test the network used inside the system. have.

즉, 본 발명의 실시예에서는 표준화된 소프트웨어 설계 명세서를 바탕으로 실제 하드웨어를 이용하는 HIL 테스트 시스템을 자동으로 구성함으로써 개발 시스템의 신뢰성과 소프트웨어 재사용성을 보다 효과적으로 향상시킬 수 있다.That is, in the embodiment of the present invention, by automatically configuring the HIL test system using real hardware based on the standardized software design specification, the reliability of the development system and the software reusability can be improved more effectively.

그리고, 표준화된 소프트웨어 설계 문서를 통해서 테스트 케이스가 자동으로 생성되므로 테스트 환경 구축을 위한 시간과 노력을 감소시킬 수 있다.And, test cases are automatically generated through standardized software design documentation, reducing the time and effort required to build a test environment.

본 발명의 실시예는 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터로 읽을 수 있는 매체를 포함한다. 이 매체는 지금까지 설명한 마이크로컨트롤러유닛(MCU) 테스트 자동화 방법을 실행시키기 위한 프로그램을 기록한다. 이 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 이러한 매체의 예에는 하드디스크, 플로피디스크 및 자기 테이프와 같은 자기 매체, CD 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 자기-광 매체, 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 구성된 하드웨어 장치 등이 있다. 또는 이러한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.Embodiments of the present invention include a computer-readable medium having program instructions for performing various computer-implemented operations. This medium records a program for executing the microcontroller unit (MCU) test automation method described so far. The medium may include program instructions, data files, data structures, etc., alone or in combination. Examples of such media include magnetic media such as hard disks, floppy disks and magnetic tape, optical recording media such as CDs and DVDs, floppy disks and program commands such as magnetic-optical media, ROM, RAM, flash memory, and the like. Hardware devices configured to store and perform such operations. Alternatively, the medium may be a transmission medium such as an optical or metal wire, a waveguide, or the like including a carrier wave for transmitting a signal specifying a program command, a data structure, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.

이상에서 본 발명의 바람직한 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, Of the right.

Claims (10)

타겟 시스템에 포함된 MCU에 대한 테스트 자동화 시스템에 있어서,
표준화된 소프트웨어의 XML 파일을 분석하여 상기 소프트웨어에 대한 설계 정보를 추출하는 소프트웨어 설계 정보 추출부,
추출된 상기 소프트웨어 설계 정보를 이용하여 TTCN-3 테스트 케이스를 생성하고, 상기 타겟 시스템으로부터 수신된 결과 값을 상기 TTCN-3 테스트 케이스로부터 획득한 예상 출력 값과 비교하여 상기 타겟 시스템의 테스트 결과를 결정하는 TTCN-3 테스트 시스템, 그리고
상기 TTCN-3 테스트 시스템과 상기 타겟 시스템 사이에 연결되는 통신 인터페이스부를 포함하는 MCU 테스트 자동화 시스템.
In the test automation system for the MCU included in the target system,
Software design information extraction unit for extracting the design information for the software by analyzing the XML file of the standardized software,
The TTCN-3 test case is generated using the extracted software design information, and the test result of the target system is determined by comparing the result value received from the target system with the expected output value obtained from the TTCN-3 test case. TTCN-3 test system, and
MCU test automation system including a communication interface connected between the TTCN-3 test system and the target system.
제1항에 있어서,
상기 소프트웨어 설계 정보는
상기 소프트웨어 컴포넌트의 입출력 변수 및 상기 변수의 데이터 타입을 포함하는 MCU 테스트 자동화 시스템.
The method of claim 1,
The software design information
MCU test automation system comprising input and output variables of the software component and data types of the variables.
제2항에 있어서,
상기 TTCN-3 테스트 시스템은,
추출된 상기 소프트웨어 설계 정보를 이용하여 TTCN-3 테스트 케이스를 생성하는 테스트 케이스 생성부, 그리고
상기 TTCN-3 테스트 케이스을 이용하여 상기 테스트 데이터에 대한 예상 출력 값을 획득하고, 상기 타겟 시스템에 테스트 데이터를 전달한 다음 상기 타겟 시스템으로부터 수신된 결과 값을 상기 예상 출력 값과 비교하여 상기 타겟 시스템의 적합성 여부를 결정하는 TTCN-3 테스터부를 포함하는 MCU 테스트 자동화 시스템.
The method of claim 2,
The TTCN-3 test system,
A test case generation unit generating a TTCN-3 test case using the extracted software design information, and
The TTCN-3 test case is used to obtain an expected output value for the test data, transfer test data to the target system, and then compare the result value received from the target system with the expected output value to ensure suitability of the target system. MCU test automation system including a TTCN-3 tester to determine whether or not.
제3항에 있어서,
상기 통신 인터페이스부는,
상기 TTCN-3 테스트 시스템과 연결되어 통신하는 소프트웨어 모듈, 그리고,
상기 타겟 시스템에 포함된 복수의 MCU에 각각 연결되어, 상기 소프트웨어 모듈을 통하여 통신을 수행하는 복수의 하드웨어 모듈을 포함하는 MCU 테스트 자동화 시스템.
The method of claim 3,
The communication interface unit,
A software module connected to and in communication with the TTCN-3 test system, and
MCU test automation system comprising a plurality of hardware modules connected to each of the plurality of MCU included in the target system, the communication through the software module.
제4항에 있어서,
상기 복수의 MCU는 서로 네트워크를 형성하며 내부 통신을 수행하는 MCU 테스트 자동화 시스템.
The method of claim 4, wherein
The MCU test automation system that forms a network with each other and performs internal communication.
제5항에 있어서,
상기 복수의 MCU 중에서 적어도 하나는 내부 네트워크를 테스트 하기 위한 MCU인 MCU 테스트 자동화 시스템.
The method of claim 5,
At least one of the plurality of MCU MCU test automation system for testing the internal network MCU.
타겟 시스템에 포함된 MCU에 대한 테스트 자동화 방법에 있어서,
표준화된 소프트웨어의 XML 파일을 분석하여 상기 소프트웨어에 대한 설계 정보를 추출하는 단계,
추출된 상기 소프트웨어 설계 정보를 이용하여 TTCN-3 테스트 케이스를 생성하는 단계,
상기 TTCN-3 테스트 케이스을 이용하여 테스트 데이터에 대한 예상 출력 값을 획득하는 단계,
상기 타겟 시스템에 상기 테스트 데이터를 전달한 다음 상기 타겟 시스템으로부터 결과 값을 수신하는 단계, 그리고
수신된 상기 결과 값을 예상 출력 값과 비교하여 상기 타겟 시스템의 테스트 결과를 결정하는 단계를 포함하는 MCU 테스트 자동화 방법.
In the test automation method for the MCU included in the target system,
Extracting design information about the software by analyzing XML files of standardized software;
Generating a TTCN-3 test case using the extracted software design information,
Obtaining an expected output value for test data using the TTCN-3 test case,
Passing the test data to the target system and then receiving a result value from the target system, and
And comparing the received result value with an expected output value to determine a test result of the target system.
제7항에 있어서,
상기 TTCN-3 테스트 시스템과 상기 타겟 시스템은 통신 인터페이스부를 통하여 통신하며,
상기 통신 인터페이스부는,
상기 TTCN-3 테스트 시스템과 연결되어 통신하는 소프트웨어 모듈, 그리고,
상기 타겟 시스템에 포함된 복수의 MCU에 각각 연결되어, 상기 소프트웨어 모듈을 통하여 통신을 수행하는 복수의 하드웨어 모듈을 포함하는 MCU 테스트 자동화 방법.
The method of claim 7, wherein
The TTCN-3 test system and the target system communicate through a communication interface unit,
The communication interface unit,
A software module connected to and in communication with the TTCN-3 test system, and
MCU test automation method comprising a plurality of hardware modules connected to each of the plurality of MCU included in the target system, the communication through the software module.
제8항에 있어서,
상기 복수의 MCU는 서로 네트워크를 형성하며 내부 통신을 수행하는 MCU 테스트 자동화 방법.
The method of claim 8,
The MCU test automation method for forming a network with each of the plurality of MCU performs internal communication.
제9항에 있어서,
상기 복수의 MCU 중에서 적어도 하나는 내부 네트워크를 테스트 하기 위한 MCU인 MCU 테스트 자동화 방법.
10. The method of claim 9,
At least one of the plurality of MCU is MCU MCU test automation method for testing an internal network.
KR1020100109944A 2010-11-05 2010-11-05 Automatic test system for micro controller unit and method thereof KR101185542B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100109944A KR101185542B1 (en) 2010-11-05 2010-11-05 Automatic test system for micro controller unit and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100109944A KR101185542B1 (en) 2010-11-05 2010-11-05 Automatic test system for micro controller unit and method thereof

Publications (2)

Publication Number Publication Date
KR20120048350A true KR20120048350A (en) 2012-05-15
KR101185542B1 KR101185542B1 (en) 2012-09-24

Family

ID=46266711

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100109944A KR101185542B1 (en) 2010-11-05 2010-11-05 Automatic test system for micro controller unit and method thereof

Country Status (1)

Country Link
KR (1) KR101185542B1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160008925A (en) 2014-07-15 2016-01-25 전성희 The System and Method for Air quality managing
CN106294117A (en) * 2015-06-12 2017-01-04 神讯电脑(昆山)有限公司 The method of testing of the embedded controller BIOS of customized machine
CN106371990A (en) * 2016-08-30 2017-02-01 福建天晴数码有限公司 Testing method and testing system of concurrent processing capability of interactive software
CN106371988A (en) * 2016-08-22 2017-02-01 浪潮(北京)电子信息产业有限公司 Automatic interface test method and device
KR102558036B1 (en) * 2022-11-25 2023-07-20 인하대학교 산학협력단 Automated RTL Design Verification Method and System by using Python
CN117234827A (en) * 2023-11-14 2023-12-15 武汉凌久微电子有限公司 Multi-platform automatic test method and system based on domestic graphic processor

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105242997A (en) * 2015-08-11 2016-01-13 中国航空工业集团公司西安飞机设计研究所 Automatic test method and apparatus for airborne computer

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160008925A (en) 2014-07-15 2016-01-25 전성희 The System and Method for Air quality managing
CN106294117A (en) * 2015-06-12 2017-01-04 神讯电脑(昆山)有限公司 The method of testing of the embedded controller BIOS of customized machine
CN106371988A (en) * 2016-08-22 2017-02-01 浪潮(北京)电子信息产业有限公司 Automatic interface test method and device
CN106371990A (en) * 2016-08-30 2017-02-01 福建天晴数码有限公司 Testing method and testing system of concurrent processing capability of interactive software
KR102558036B1 (en) * 2022-11-25 2023-07-20 인하대학교 산학협력단 Automated RTL Design Verification Method and System by using Python
CN117234827A (en) * 2023-11-14 2023-12-15 武汉凌久微电子有限公司 Multi-platform automatic test method and system based on domestic graphic processor
CN117234827B (en) * 2023-11-14 2024-02-13 武汉凌久微电子有限公司 Multi-platform automatic test method and system based on domestic graphic processor

Also Published As

Publication number Publication date
KR101185542B1 (en) 2012-09-24

Similar Documents

Publication Publication Date Title
KR101185542B1 (en) Automatic test system for micro controller unit and method thereof
JP7371141B2 (en) Tools and methods for real-time dataflow programming languages
CN105701008B (en) System and method for test case generation
US20060265469A1 (en) XML based scripting framework, and methods of providing automated interactions with remote systems
Mubeen et al. Provisioning of predictable embedded software in the vehicle industry: The rubus approach
CN110610089B (en) User behavior simulation method and device and computer equipment
CN103838653A (en) Register automatic authentication method based on VMM RAL
Zhang et al. A systematic approach to automatically derive test cases from use cases specified in restricted natural languages
CN113179194B (en) OPC protocol gateway test system and method
CN112860587B (en) UI automatic test method and device
US8458669B2 (en) Automated test system
KR102075345B1 (en) Fuzzing system, execution flow information extracting apparatus and method for fuzzing
Schneider et al. Combined simulation and testing based on standard UML models
Ahamad et al. Performability modeling of safety-critical systems through AADL
Mubeen et al. Towards extraction of interoperable timing models from component-based vehicular distributed embedded systems
US20220057769A1 (en) Programmable microgrid control system
Delange et al. Supporting the ARP4761 safety assessment process with AADL
Pfeffer et al. Automatic analysis of critical sections for efficient secure multi-execution
CN117056896B (en) Intelligent control system form verification method and device
KR101976993B1 (en) Interactive Dynamic Binary Instrumentation Code Extraction Apparatus for Automatic Analysis of Mobile Code and method thereof
Rings et al. Adding unified diagnostic services over CAN to an HIL test system
JP2003114834A (en) Usb device evaluation system
Villani et al. From academia to industry: challenges and lessons learned from a model-based-testing experience
Lavingia et al. Advancements in automated testing tools for Android set-top boxes: a comprehensive evaluation and integration approach
Veugen Comparison between formal verification and runtime verification of state machines in modeled software controllers

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
FPAY Annual fee payment

Payment date: 20150902

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160628

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170628

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190701

Year of fee payment: 8