KR20050073458A - 소프트웨어의 양방향 프로빙 - Google Patents
소프트웨어의 양방향 프로빙 Download PDFInfo
- Publication number
- KR20050073458A KR20050073458A KR1020057004947A KR20057004947A KR20050073458A KR 20050073458 A KR20050073458 A KR 20050073458A KR 1020057004947 A KR1020057004947 A KR 1020057004947A KR 20057004947 A KR20057004947 A KR 20057004947A KR 20050073458 A KR20050073458 A KR 20050073458A
- Authority
- KR
- South Korea
- Prior art keywords
- address location
- data
- software
- location
- probe
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
Abstract
본 발명은 소프트웨어를 양방향 프로빙하기 위한 방법 및 시스템에 관한 것이다. 상기 양방향 프로브는 피검사 소프트웨어로부터 및 피검사 소프트웨어로 데이터를 전달할 수 있다. 이러한 데이터의 두 방향 전달은 소프트웨어 내 변수들 및 인자들이 모니터될 뿐만 아니라 필요에 따라 변화될 수 있도록 허락한다. 테스트 벡터들은 개발될 수 있고 검사 목적들을 위해 실행되는 동안 그 소프트웨어 내로 입력될 수 있다. 회귀 분석은 이전 반복으로부터의 데이터를 다음 반복을 위한 입력으로 사용함으로써 더 쉽게 만들어질 수 있다.
Description
발명의 분야
본 발명은 소프트웨어 테스트에 관한 것이고, 보다 구체적으로 본 발명은 소프트웨어의 양방향 프로빙을 하기 위한 방법에 관한 것이다.
발명의 배경
소프트웨어의 개발자 사이에, 가장 중요하게 요구되는 사항 중에 하나는 신뢰할 만한 소프트웨어에 관한 것이다. 신뢰성이란 특정 환경에서 특정 시간 동안에 실패 없이 작동할 수 있는 소프트웨어의 능력을 말한다. 신뢰성의 높은 레벨을 충분히 보장하기 위해 소프트웨어는 발매되기 전에 철저하게 테스트되고 결함이 제거(디버그)되어야 한다. 일반적으로 소프트웨어 프로그램을 구성하는 개별 기능적 구성요소들(예: 함수 호출(function call), 서브루틴들) 뿐만 아니라 완전체로서 전체 소프트웨어 프로그램이 테스트된다. 전형적으로 테스트 벡터(vectors)는 소프트웨어 및/또는 소프트웨어의 하나 또는 그 이상의 기능적 구성요소들에 의해 요구되는 변수들에 대한 일련의 값들을 포함하여 생성된다. 상기 변수값(variable value)들은 그 소프트웨어가 실행되고자 하는 사용 상태 및 환경들의 다양한 유형들을 나타내기 위해 선택된다. 상기 테스트 벡터들은 그런 다음 상기 소프트웨어 및/또는 소프트웨어의 하나 또는 그 이상의 기능적 구성요소들에 적용되고, 상기 변수값들이 관찰되고 기록된다.
종종 수행되는 테스트의 한 유형은 회귀분석(regression analysis) 또는 때때로 검증 테스트(verification testing)라고 불린다. 회귀분석은 알려진 문제들을 고치기 위해서 수정된 소프트웨어의 선택적 재시험과 관련된다. 상기 선택적 재시험은 상기 밝혀진 문제들이 수정되었고 그 수리의 결과로서 실패된 다른 선작업 기능적 구성요소들이 없다는 것을 보장하기 위해서 수행된다. 이러한 유형의 테스트는 기본적으로 상기 수정된 코드가 여전히 그것의 특정 요구사항들 여전히 따르고, 그리고 어떠한 수정되지 않은 코드도 상기 수리 활동에 의해 영향을 받지 않았음을 보장하기 위한 품질 관리 측정이다.
특히 회귀분석에서 그리고 일반적으로 소프트웨어 테스트에서 중요한 특징은 상기 테스트 벡터들로부터 나오는 변수값들을 관찰하는 능력이다. 소프트웨어 및/또는 그 기능적 구성요소들을 관찰하기 위한 초기 시도들은 소스 코드 그 자체에서 중지점(break points) 및 다른 트랩(traps)들을 수동적으로 설정하는 것과 관련되었다. 보다 최근에, Texas Instruments사의 Code Composer StudioTM 및 National Instruments사의 LabVIEWTM와 같은 소프트웨어 개발 도구들은 피검사(테스트 대상) 코드에 삽입될 수 있는 소프트웨어 프로브들(probes)을 포함한다. 상기 소프트웨어 프로브들은 피검사 코드 내 변수들이 소프트웨어가 실행되는 실시간으로 관찰되도록 한다. 그러나 이러한 후기 해법들은 오직 피검사 코드들로부터 나오는 변수값들을 획득하는 것에 기초한다(예: 따라서 그들은 분석될 수 있다). 소프트웨어의 실행 동안에 상기 변수값들이 변화되는 것을 허락하지 못한다. 다시 말해서 현재 존재하는 소프트웨어 프로브들은 데이터가 오직 피검사 코드에서 검사(테스트) 시스템으로만 흐르도록 허락되는 한 방향 또는 일정 방향이다. 데이터가 검사 시스템으로부터 피검사 코드로 흐를 수 있도록 데이터 이동의 방향이 바뀌는 것을 허락하지 않는다.
따라서 데이터가 피검사 코드로 뿐만 아니라 피검사 코드로부터 양쪽으로 전달될 수 있는 방식의 소프트웨어를 프로브할 수 있는 방법을 제공하는 것이 요구된다.
발명의 요약
간단하게, 본 발명은 소프트웨어의 양방향 프로빙에 관한 것이다. 본 발명의 양방향 프로브는 데이터를 피검사 소프트웨어로부터 및 피검사 소프트웨어로 전달할 수 있다. 이러한 데이터의 두 방향 전달은 그 소프트웨어 내 변수들이 모니터될 뿐만 아니라 필요에 따라 변경될 수 있도록 한다. 테스트 벡터는 테스트 목적들을 위해 수행되는 동안 개발될 수도 있고 그 소프트웨어 내로 주입될 수도 있다. 회귀분석은 다음 반복들(iterations)을 위한 입력으로서 이전 반복들로부터의 데이터를 사용함으로써 더 쉽게 된다.
일반적으로 하나의 구체예에서, 본 발명은 복수개의 데이터 변수들 및 그의 기능 인자들(function arguments)을 갖는 소프트웨어를 테스트하는 방법에 관한 것이다. 상기 방법을 소프트웨어를 실행하고, 상기 소프트웨어에 의해 사용되는 변수들 또는 인자들의 적어도 하나에 대한 주소 위치(address location)를 식별하고, 그리고 그 데이터를 모니터하기 위해 상기 주소 위치에 저장된 어떠한 데이터라도 검사 시스템으로 출력하는 단계를 포함한다. 상기 검사 시스템으로부터의 데이터는 그런 다음 상기 주소 위치로 입력되고, 그것으로 인해 상기 주소 위치에 이전에 저장된 어떠한 데이터를 바꾼다.
일반적으로, 본 발명의 다른 구체예는 복수개의 데이터 변수들 및 함수 인자들을 갖는 소프트웨어를 테스트하기 위한 장치에 관한 것이다. 상기 장치는 중앙 처리 장치, 및 상기 중앙 처리 장치와 연결되는 저장 유닛을 포함하여 이루어진다. 상기 저장 유닛은 상기 중앙 처리 장치가 소프트웨어를 실행하고, 상기 소프트웨어에 의해 사용되는 변수들 또는 인자들의 적어도 하나에 대한 주소 위치를 식별하고, 출력된 데이터를 모니터하기 위해 상기 주소 위치에 저장된 어떠한 데이터를 검사 시스템으로 출력하고, 그리고 상기 주소 위치에 미리 저장된 어떠한 데이터를 교체하기 위해 상기 검시 시스템으로부터 상기 주소 위치로 데이터를 입력하도록 명령하기 위한 컴퓨터 판독가능 명령들을 저장한다.
일반적으로, 본 발명의 또 다른 구체예는 복수개의 데이터 변수 및 기능 인자들을 갖는 소프트웨어를 테스트하기 위한 시스템에 관한 것이다 상기 시스템은 소프트웨어 내에 하나 또는 그 이상의 프로브 명령들을 포함하는 상기 소프트웨어를 실행하기 위해 구성된 피검사 장치, 상기 피검사 장치와 연결된 검사 장치를 포함한다. 상기 검사장치는 프로브 명령이 실행될 때 상기 피검사 장치가 상기 소프트웨어에 의해 사용되는 변수들 또는 인자들 중 적어도 하나에 대한 주소 위치를 식별하고, 상기 주소 위치 내에 저장된 어떠한 데이터를 출력하고, 그리고 검사장치로부터 수신된 데이터를 상기 주소 위치로 입력하도록 상기 피검사 장치를 제어할 수 있도록 구성된다.
본 명세서에서 사용되어질 때 구성되는 용어는 언급된 특징들, 완전체들, 단계들 또는 구성요소들의 존재를 명확히 해야 하지만, 하나 또는 그 이상의 다른 특징들, 완전체들, 단계들, 구성요소들 또는 이들의 그룹들의 존재 또는 부가를 배제하는 것이 아님이 강조되어야 한다.
도면의 간단한 설명
본 발명의 방법 및 시스템은 다음 도면들과 결합하여 발명의 상세한 설명을 참조하여 보다 상세히 이해될 수 있다.
제1도는 유사한 하드웨어 구성요소들을 사용하여 본 발명의 구체예에 따른 예시적인 소프트웨어 테스팅 환경을 도시한 도면이다.
제2a도 내지 제2d도는 유사한 하드웨어 구성요소들을 사용하여 본 발명의 구체예에 따른 양방향 소프트웨어 프로브의 예시적인 작동 모드들을 도시한 도면이다.
제3도는 본 발명의 구체예에 따른 양방향 소프트웨어 프로브가 실행될 수 있는 예시적인 시스템을 도시한 도면이다.
제4도는 본 발명의 구체예에 따른 양방향 소프트웨어 프로브가 실행될 수 있는 다른 예시적인 시스템을 도시한 도면이다.
제5도는 본 발명의 구체예에 따른 양방향 소프트웨어 프로브를 실행하는 예시적인 방법을 도시한 도면이다.
발명의 구체예에 대한 상세한 설명
다음은 도면들을 참조로 한 본 발명의 상세한 설명이고, 동일하고 유사한 요소들의 참조 번호들이 계속 사용된다.
본 발명의 구체예들은 양방향 프로브들을 사용하여 소프트웨어를 테스트하기 위한 방법 및 시스템을 제공한다. 본 발명의 양방향 프로브들은 본래 어떠한 위치에 있는 프로그램 코드에도 삽입될 수 있다. 상기 프로브들은 데이터가 소프트웨어에 주입되는 것뿐만 아니라 소프트웨어로부터 캡쳐될 수 있도록 한다. 특히, 상기 프로브들은 실행되는 동안에 소프트웨어 내 변수들의 값들이 모니터되고, 변경되고, 그리고 상기 소프트웨어로 돌아가 삽입될 수 있도록 한다. 그런 다음 상기 소프트웨어는 변경된 값들로 더 실행된다. 본 발명의 양방향 프로브는 Texas Instruments사의 Code Composer StudioTM 및 National Instruments사의 LabVIEWTM, 또는 다른 유사 소프트웨어 개발 환경들과 같은 소프트웨어 개발 도구에서 기능(feature) 또는 함수(function)로서 실행될 수 있다.
본 발명의 양방향 소프트웨어 프로빙 기술은 하드웨어 회로 보드의 테스팅과 다소 유사하다. 따라서 본 발명은 처음에 하드웨어 회로 보드에 대한 검사 시스템의 용어(terms)에서 설명될 것이다. 그러나 이 설명은 오직 본 발명이 실질적으로 소프트웨어 프로빙을 안내하기 위한 예시적인 목적을 위해 제공되는 것이다.
도 1은 본 발명의 양방향 프로빙 기술이 사용될 수 있는 소프트웨어 테스팅 도구와 유사한 하드웨어 검사 시스템(100)을 도시한다. 상기 하드웨어 검사 시스템(100)은 복수개의 하드웨어 프로브(그 중에 하나가 104로 표시되어 있음)를 통해 피검사 장치(DUT)에 연결된다. 각 하드웨어 프로브(104)는 프로브 ID에 의해 식별될 수 있다. 예를 들어, 제1 프로브는 PID 1, 제2 프로브는 PID 2, 제3 프로브는 PID 3, 등. 프로브들(104)은 교차-회로 박스(cross-circuit box)(106)의 한 면과 연결되고, 상기 교차-회로 박스의 다른 면은 파형 발생기와 같은 하나 또는 그 이상의 함수 발생기(108) 및 오실로스코프(oscilloscopes) 및 웨이브미터(wavemeters)와 같은 하나 또는 그 이상의 측정 유닛들(110)에 연결된다. 상기 교차-회로 박스(106)는 상기 프로브(104)들이 상기 검사 시스템(100)의 측정 유닛들(110) 및 함수 발생기들(108)로부터 선택적으로 연결되거나 연결되지 않도록 한다. 검사 시스템(100) 내 제어기(명확히 도시되어 있지 않음)는 상기 교차-회로 박스(106)의 연결성을 제어하는 제어 신호를 제공한다.
보이는 바와 같이, 프로브(104)들은 프로브될 수 있도록 DUT(102)의 인터레스트의 특정 지점에 전기 신호들을 인가하기 위해 위치한다. 예를 들어, 제1 프로브(PID 1)는 프로브될 수 있도록 전기적 신호 "a"를 인가하기 위해 Func 2의 입력에 위치한다. 마찬가지로 제2 프로브(PID 2)는 프로브될 수 있도록 전기적 신호 "b"를 인가하기 위해 Func 1의 입력에 위치한다. 그러나 제5 프로브(PID 5)는 프로브될 수 있도록 전기적 신호 "d"를 인가하기 위해 Func 1의 출력에 위치한다. 다양한 함수들(즉, Func 1-3)은 DUT에 의해 수행될 수 있는 어떠한 함수일 수 있다(예: 더하기, 빼기, 평균, 등). 어떤 함수들은 이 또한 프로브될 수 있는 하나 또는 그 이상의 내부 및/또는 하부 함수들(sub-functions)을 그 안에 가질 수 있다. 예를 들어, Func 3은 프로브될 수 있고 그 내부에 포함된 하부 함수 "f"를 갖는다. 상기 설명과 유사한 방식으로, 본 발명의 양방향 프로브는 프로브되어야 할 소프트웨어 내 인터레스트의 특정 변화들도 허락한다.
DUT로의 각 프로브(104)의 연결은 112로 표시된 점선 원에 도시된 바와 같이 전형적인 유선 페어 연결과 유사하다. 도시된 바와 같이, 유선 쌍(112)의 하나의 선(114)은 DUT(102)로부터 교차-회로 박스(106)에 이르고, 반면 유선 쌍(112)의 다른 선(116)은 교차-회로 박스(106)로부터 DUT로 되돌아가도록 이른다. 유사하게, 교차-회로 박스(106)로의 각 프로브(104)의 연결점은 점선 원(118)에 도시된 바와 같이 한 쌍의 스위치들과 유사하다. 120으로 표시된 인바운드(inbound) 스위치는 프로브(104)의 인입선(incommind wire)(114)을 검사 시스템(100)(예: 측정 유닛)으로 선택적으로 연결한다. 112로 표시된 아웃바운드(outbound) 스위치는 프로브(104)의 복귀선(return wire)(116)을 인입선(114)(예를 들어 일반적인 동작을 위해) 또는 검사 시스템(100)(예를 들어 함수 발생기로)에 선택적으로 연결한다. 상기 스위치들의 다양한 작동 모드들은 아래에서 더 자세히 설명될 것이다.
도 2a 내지 도 2d를 참조하면, 프로브들을 교차-회로 박스에 연결시키는 스위치들의 기본 작동 모드들이 도시되어 있다. 이들 작동 모드들은 본 발명의 소프르웨어 프로브의 기능적 성능을 그래픽적으로 도시한다. 도 2a의 제1 작동 모드에서, 인바운드 스위치(120) 및 아웃바운드 스위치(122)는 교차-회로 박스로부터 둘 다 끊어져 있고, 각 다른 쪽으로 연결되어 있다. 이것은 데이터가 DUT(102)로부터 검사 시스템(100)으로 또는 검사 시스템(100)으로부터 DUT(102)로 흐르는 일반 작동 모드이다. 도 2b에 도시된 제2 작동 모드에서, 인바운드 스위치(120)은 DUT(102)를 검사 시스템(100)에 연결시킨 반면 아웃바운드 스위치(122)는 여전히 인바운드 스위치(120)에 연결되어 있다(즉, 검사 시스템으로부터 분리됨). 이 작동 모드는 모니터링 목적들을 위해 DUT(102)로부터 데이터를 획득하기 위해 사용된다. 도 2c 에 도시된 제3 작동 모드에서, 아웃바운드 스위치(122)는 검사 시스템(100)에 연결되는 반면 인바운드 스위치(120)는 검사 시스템(100)으로부터 분리되어 있다. 이 작동모드는 테스팅 목적을 위해 검사 시스템(100)으로부터 DUT(102)에 데이터를 주입하기 위해 사용된다. 도 2d에 도시된 제4 작동 모드에서, 인바운드 스위치(120)와 아웃바운드 스위치(122)는 둘 다 검사 시스템(100)에 연결되어 있다. 이 작동모드는 테스팅 목적을 위해 DUT(102)에 데이터를 주입하기 위해서뿐만 아니라 모니터링 목적들을 위해 DUT(102)로부터 데이터를 획득하기 위해 사용된다. 유사한 방식으로, 본 발명의 양방향 프로브는 피검사 소프트웨어 프로그램의 변수들 및 인자들로부터 데이터를 획득하거나 이들 변수들 및 인자들 내에 데이터를 입력하는 둘 다를 위해 사용될 수 있다.
본 발명의 구체예에 따른 양방향 프로브 명령들을 포함하는 프로그래밍 코드의 예시적인 블록이 아래 예 1에 도시되어 있다. 보이는 바와 같이, 프로그래밍 코드의 블록은 양방향 프로브의 일반적인 성질 및 응용력을 강조하기 위해 특정 프로그래밍 언어가 아닌 의사코드(pseudocode)로 쓰여 있다. 상기 예에서 Func0는 피검사 코드이고 도 1의 DUT(102)와 유사하다. "probe" 명령어들은 도 1의 하드웨어 프로브들 PID 1-5와 유사하고, 인자들(arguments)로서 프로브되어야 할 변수 또는 인자의 표지(indication)뿐만 아니라 프로브 ID를 전형적으로 포함한다. 예를 들어, "probe(1,c)"는 제1 프로브 PID 1을 언급하고, 피검사 코드 내 변수 "c"에 대응하는 주소 위치에 영향을 준다. 따라서 프로브 명령 "probe(1,c)"는 프로그래밍 코드의 블록 내 변수 "c"가 모니터되거나 필요한 경우 변화되도록 허락한다. 유사하게 프로브 명령 "probe(4,a)"는 변수 "a"가 모니터되거나 필요한 경우 변화되는 등을 허락한다.
예 1
Func3은 하부 함수 "f"를 가지고, 입력들은 변수들 "a'" 내지 "d'"이고, 출력은 변수 "e"이고, Func0의 변수 "a" 내지 "d" 및 "h"에 각각 대응함에 주의하라. 하부 함수들은 또한 본 발명에 따른 양방향 프로빙 기술을 사용하여 프로브될 수 있다.
상기 프로브 명령들을 피검사 코드에 더함으로써 소프트웨어는 관찰될 수 있고 따라서 테스트될 수 있다. 어떠한 유형의 변수(예: 자동의(스택 내에 임시적으로 저장), 전역적, 정적, 등) 또는 어떠한 저장된 데이터는 프로브 명령 내 변수에 의해 표시됨으로써 그것이 프로브의 주소 공간에 있는 한 프로브될 수 있다. 본 발명의 양방향 프로브를 사용하여 함수 인자들을 프로브하는 것이 또한 가능하다. 변수 및 함수 인자의 프로빙은 소프트웨어의 기능성을 더 테스트하는 것을 가능하게 한다. 특히 함수의 변수들 및 인자들의 프로빙은 추가적인 테스트들 및 테스트 벡터들이 획득된 데이터에 기초하여 개발되는 것을 허락한다.
프로브 명령들의 예시적인 C-코드 버전은 아래 예 2에 도시된 소스 코드의 블록에서 보여질 수 있다. 이 예는 무엇이 본 발명의 구체예들을 사용하는 소스 코드의 실제 블록이 무엇처럼 보이는 지를 설명하기 위해 제공된다.
예 2
본 발명의 양방향 프로빙 기술은 어떠한 검사 시스템에서도 실행될 것이다. 도 3은 양방향 프로빙 기술을 실행하기 위한 예시적인 검사 시스템(300)을 보여준다. 상기 검사 시스템(300)은 서로 교신되는 검사장치(302) 및 피검사장치(304)를 포함한다.
상기 검사장치(302)는 CPU(306), 입출력 인터페이스 유닛(308), 및 저장 유닛(310)을 포함하는 많은 기능적 구성요소들을 갖는 전형적인 컴퓨터이다. 이들 구성요소들을 컴퓨터 분야의 당업자들에게 잘 알려진 것이므로 여기서는 단지 간단하게 설명될 것이다. 상기 CPU(306)는 운영 시스템(operating system) 및 그 내부의 어떠한 소프트웨어 실행을 포함하여 검사장치(302)의 모든 소프트웨어 프로그램들의 실행을 담당한다. 상기 인터페이스 유닛(308) 상기 검사장치(302)에 거기에 연결된 어떠한 입출력 장치들(예: 키보드, 마우스, 디스플레이 유닛, 프린터, 등)뿐만 아니라 피검사장치(304)로의 인터페이스를 제공한다. 상기 저장 유닛(310)은 검사장치(302)에서 실행되는 소프트웨어 및 운영 시스템의 실행을 위해 필요한 어떠한 소프트웨어 프로그램들 및/또는 데이터에 대한 임시 저장(예: 램(RAM)) 및/또는 장기간 저장(예: 하드드라이브)을 제공한다.
소프트웨어 개발 도구(312)를 포함하여 많은 소프트웨어 어플리케이션들이 상기 저장 유닛(310)에 저장된다. 상기 소프트웨어 개발 도구(312)는 Texas Instruments사의 Code Composer StudioTM 및 National Instruments사의 LabVIEWTM, 또는 다른 유사 소프트웨어 개발 도구들과 같은 현존 소프트웨어 개발 도구와 많은 동일한 특징들을 가지고 있으면 동일한 방식으로 작동된다. 그러나 본 발명의 구체예들에 따르면, 상기 소프트웨어 개발 도구(312)는 프로브 제어 및 분석 모듈(314)을 더 포함한다. 상기 프로브 제어 및 분석 모듈(314)은 상기 소프트웨어 개발 도구(312)를 사용하여 테스트되는 어떠한 소프트웨어의 양방향 프로빙을 제어하고 프로브되는 데이터를 분석할 수 있다. 특히, 상기 프로브 제어 및 분석 모듈(314)은 사용자의 결정에 따라 데이터가 피검사 코드로부터 캡쳐되거나, 피검사 코드로 주입되거나, 또는 두 가지 모두 되도록 허락한다. 상기 프로브 제어 및 분석 모듈(314)은 또한 사용자가 획득된 데이터에 기초하여 테스트 벡터들을 생성하고 상기 테스트 벡터들을 피검사 코드로 다시 주입되도록 허락한다. 이것은 사용자가 피검사 코드의 작동과 신뢰성의 모니터 및 검사를 더 쉽고 편리하게 할 수 있도록 한다.
현재 구체예에서, 양방향 프로브 명령들을 포함하는 피검사 코드는 분리된 유닛, 즉 검사장치(302)와 교신하는 피검사장치(304)에서 실행된다. 검사장치(302)와 같이 피검사장치(304)는 CPU(316), 입출력 인터페이스 유닛(318), 및 저장 유닛(32)을 포함하는 많은 기능적 구성요소들을 갖는 전형적인 컴퓨터이다. 상기 피검사장치(304)의 구성요소들은 상기 검사장치(302) 내 대응 요소들과 기능에 있어 유사하므로 여기서는 설명되지 않을 것이다. 주요한 점은 프로브된 소스 코드 및 양방향 프로브 명령 및 구현을 포함하는 상기 피검사 코드(322)가 상기 검사장치(302)로부터 분리되어 저장되고 실행된다는 것이다. (프로브 명령들의 예시들을 위해 상기 소스 코드의 예시적인 블록들 참조.)
그러나 어떤 구체예들에서, 검사장치 및 피검사장치는 두가지 기능을 수행하는 단일, 통합 검사 시스템으로서 구현된다. 도 4는 그러하 검사 시스템(400)의 예를 도시한다. 상기 통합 검사 시스템(400)은 CPU(402), 입출력 인터페이스(404), 및 저장 유닛(406)을 포함하는 많은 기능적 구성요소들을 갖는다. 이들 구성요소들은 그 내부에 소프트웨어 개발 도구(408) 및 피검사코드(410)를 갖는 저장 유닛(406)을 제외하고, 도 3과 함께 설명된 그들의 대응 구성요소와 유사하다. 따라서 상기 검사 시스템(400)은 소프트웨어 개발 도구(408) 및 피검사코드(410)를 동시에(즉, 다중작업(multitasking)) 실행할 수 있는 충분한 저장 및 처리 능력을 갖는 것이 바람직하다. 상기 소프트웨어 개발 도구(408)는 프로브 제어 및 분석 모듈(뚜렷하게 도시되어 있지 않음)을 포함하는, 위에서 설명한 소프트웨어 개발 도구(312)와 본질적으로 동일하다. 마찬가지로, 상기 피검사코드(410)는 프로브된 소스 코드 및 프로브 명령 미 구현을 포함하는, 위에서 설명한 피검사코드(322)와 본질적으로 동일하다.
양방향 프로브 명령의 실행은 본 발명의 구체예에 따른 도 5의 예시적인 방법(500)에서 설명된다. 그러한 방법(500)은 다중작업 환경에서의 통합 검사장치 시스템 또는 피검사코드를 실행하고 있는 상기 피검사 장치에서 일반적으로 구현된다. 상기 방법(500)에서, 하나 또는 그 이상의 프로브 명령들을 포함하는 소스 코드의 블록은 실행되고 있는 과정에 있다. 상기 코드의 실행 동안의 어떤 점에서, 단계 501, 프로브 명령들 중 하나가 우연히 만나게 된다. 그 다음 단계(단계 502)에서, 프로브가 프로브 모드에 설정되어 있는지 여부가 결정이 된다. 특정 모드는 일반적으로 프로그램된 명령 또는 수동으로, 또는 양자의 결합으로, 상기 소프트웨어 개발 도구(312)로부터 검사장치를 통해 사용자에 의해 설정된다. 만약 그 대답이 예이면, 세 번째 단계(503)에서 메모리 또는 프로브 명령에 의해 지적되는 저장 영역 내 데이터는 그것이 필요에 따라 분석되고 모니터될 수 있는 검사 시스템으로 전달된다. 만약 아니오이면, 상기 방법(500)은 프로브가 주입 모드(inject mode)로 설정되어 있는지 여부를 결정하는 네 번째 단계(504)로 계속된다.
만약 대답이 예이면, 다섯 번째 단계(505)에서 상기 메모리 또는 프로브 명령에 의해 지적되는 저장 영역 내 데이터는 예를 들어 간단 메모리 복사(simple memory copy)를 사용하여 검사 시스템으로부터 받은 새로운 데이터로 수정 및/또는 교체된다. 만약 아니오이면, 상기 방법(500)은 피검사코드의 남은 실행을 계속한다.
상기 설명된 방법(500)은 프로브 명령의 단순화된 구현임에 주의하여야 한다. 어떤 구체예에서, 프로빙 모드를 결정하는 것에 덧붙여 그것의 크기뿐만 아니라 데이터의 유형이 확인된다. 연속 구조로 저장되지 않은 배열 및 짝수 변수들(even variables)과 같은 보다 복잡화된 변수들을 프로브하는 것도 또한 가능하다. 이러한 방식에서, 많은 유형의 데이터가 그것이 테스트되고 있는 동안 소프트웨어로 삽입될 뿐만 아니라 그로부터 캡쳐될 수 있다.
비록 본 발명의 특정 구체예들과 이용들이 도시되고 설명되었지만, 여기에 포함된 명확한 구성과 구성요소들에 의해 제한되지 않으며, 특허청구범위에서 정의된 본 발명의 범위에서 벗어남 없이 변경되고 수정될 수 있음이 이해되어야 한다.
Claims (22)
- 소프트웨어를 실행하고;상기 소프트웨어에 의해 사용되는 변수들 또는 인자들의 적어도 하나에 대한 주소 위치를 식별하고;모니터하기 위해 상기 주소 위치에 저장된 어떠한 데이터라도 검사 시스템으로 출력하고; 그리고상기 주소 위치에 미리 저장된 어떠한 데이터라도 교체하기 위해 상기 검시 시스템으로부터 상기 주소 위치로 데이터를 입력하는;단계를 포함하여 이루어진 것을 특징으로 하는 복수개의 데이터 변수들 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 방법.
- 제1항에 있어서, 상기 주소 위치로 입력된 상기 데이터는 상기 주소 위치로부터 출력된 상기 데이터의 변경된 버전인 것을 특징으로 하는 복수개의 데이터 변수들 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 방법.
- 제1항에 있어서, 상기 주소 위치로 입력된 상기 데이터는 상기 주소 위치로부터 출력된 상기 데이터와 동일한 것임을 특징으로 하는 복수개의 데이터 변수들 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 방법.
- 제1항에 있어서, 상기 주소 위치로 입력된 상기 데이터는 이전 반복 동안에 상기 주소 위치로부터 출력된 데이터에 기초하여 생성된 것임을 특징으로 하는 복수개의 데이터 변수들 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 방법.
- 제1항에 있어서, 상기 주소 위치로 입력된 상기 데이터는 이전 반복 동안에 상기 주소 위치로부터 출력된 데이터에 기초하여 생성된 데이터의 테스트 벡터를 포함하는 것을 특징으로 하는 복수개의 데이터 변수들 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 방법.
- 제1항에 있어서, 상기 주소 위치는 컴퓨터 메모리 내의 저장 위치를 식별하는 것을 특징으로 하는 복수개의 데이터 변수들 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 방법.
- 제1항에 있어서, 상기 주소 위치는 하드 드라이브 내의 저장 위치를 식별하는 것을 특징으로 하는 복수개의 데이터 변수들 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 방법.
- 중앙 처리 장치; 및상기 중앙 처리 장치와 연결되고,소프트웨어를 실행하고;상기 소프트웨어에 의해 사용되는 변수들 또는 인자들의 적어도 하나에 대한 주소 위치를 식별하고;모니터하기 위해 상기 주소 위치에 저장된 어떠한 데이터라도 검사 시스템으로 출력하고; 그리고상기 주소 위치에 미리 저장된 어떠한 데이터라도 교체하기 위해 상기 검시 시스템으로부터 상기 주소 위치로 데이터를 입력하도록;상기 중앙 처리 장치를 명령하기 위한 컴퓨터 판독가능 명령들을 저장하는 저장 유닛;을 포함하여 이루어진 것을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 장치.
- 제8항에 있어서, 상기 주소 위치로 입력된 상기 데이터는 상기 주소 위치로부터 출력된 상기 데이터의 변경된 버전인 것을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 장치.
- 제8항에 있어서, 상기 주소 위치로 입력된 상기 데이터는 상기 주소 위치로부터 출력된 상기 데이터와 동일한 것임을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 장치.
- 제8항에 있어서, 상기 주소 위치로 입력된 상기 데이터는 이전 반복 동안에 상기 주소 위치로부터 출력된 데이터에 기초하여 생성된 것임을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 장치.
- 제8항에 있어서, 상기 주소 위치로 입력된 상기 데이터는 이전 반복 동안에 상기 주소 위치로부터 출력된 데이터에 기초하여 생성된 데이터의 테스트 벡터를 포함하는 것을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 장치.
- 제8항에 있어서, 상기 주소 위치는 컴퓨터 메모리 내의 저장 위치를 식별하는 것을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 장치.
- 제8항에 있어서, 상기 주소 위치는 하드 드라이브 내의 저장 위치를 식별하는 것을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 장치.
- 소프트웨어 내에 하나 또는 그 이상의 프로브 명령들을 포함하는 상기 소프트웨어를 실행하기 위해 구성된 피검사 장치;상기 피검사 장치와 연결되고, 프로브 명령이 실행될 때 상기 피검사 장치가:상기 소프트웨어에 의해 사용되는 변수들 또는 인자들 중 적어도 하나에 대한 주소 위치를 식별하고;상기 주소 위치 내에 저장된 어떠한 데이터를 출력하고; 그리고검사장치로부터 수신된 데이터를 상기 주소 위치로 입력하도록;하기 위해 상기 피검사 장치를 제어할 수 있도록 구성된 검사장치;를 포함하여 이루어진 것을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 시스템.
- 제15항에 있어서, 상기 주소 위치로 입력된 상기 데이터는 상기 주소 위치로부터 출력된 상기 데이터의 변경된 버전인 것을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 시스템.
- 제15항에 있어서, 상기 주소 위치로 입력된 상기 데이터는 상기 주소 위치로부터 출력된 상기 데이터와 동일한 것임을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 시스템.
- 제15항에 있어서, 상기 주소 위치로 입력된 상기 데이터는 이전 반복 동안에 상기 주소 위치로부터 출력된 데이터에 기초하여 생성된 것임을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 시스템.
- 제15항에 있어서, 상기 주소 위치로 입력된 상기 데이터는 이전 반복 동안에 상기 주소 위치로부터 출력된 데이터에 기초하여 생성된 데이터의 테스트 벡터를 포함하는 것을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 시스템.
- 제15항에 있어서, 상기 주소 위치는 컴퓨터 메모리 내의 저장 위치를 식별하는 것을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 시스템.
- 제15항에 있어서, 상기 주소 위치는 하드 드라이브 내의 저장 위치를 식별하는 것을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 시스템.
- 제15항에 있어서, 상기 검사장치와 피검사장치가 단일 유닛 내에 존재하는 것을 특징으로 하는 복수개의 데이터 변수 및 기능 인자들을 내부에 갖는 소프트웨어를 검사하기 위한 시스템.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US41283402P | 2002-09-23 | 2002-09-23 | |
US60/412,834 | 2002-09-23 | ||
US10/428,733 | 2003-05-01 | ||
US10/428,733 US8020148B2 (en) | 2002-09-23 | 2003-05-01 | Bi-directional probing and testing of software |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050073458A true KR20050073458A (ko) | 2005-07-13 |
KR100976371B1 KR100976371B1 (ko) | 2010-08-18 |
Family
ID=31998143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020057004947A KR100976371B1 (ko) | 2002-09-23 | 2003-09-22 | 소프트웨어의 양방향 프로빙 |
Country Status (9)
Country | Link |
---|---|
US (2) | US8020148B2 (ko) |
EP (1) | EP1576477B1 (ko) |
JP (1) | JP4959941B2 (ko) |
KR (1) | KR100976371B1 (ko) |
CN (1) | CN1701305B (ko) |
AT (1) | ATE325383T1 (ko) |
AU (1) | AU2003267394A1 (ko) |
DE (1) | DE60305073T2 (ko) |
WO (1) | WO2004027623A2 (ko) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6823478B1 (en) * | 2000-09-12 | 2004-11-23 | Microsoft Corporation | System and method for automating the testing of software processing environment changes |
US7350194B1 (en) | 2001-09-24 | 2008-03-25 | Oracle Corporation | Techniques for debugging computer programs involving multiple computing machines |
US7793271B2 (en) * | 2004-06-17 | 2010-09-07 | State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of Portland State University | Bi-directional product development process simulation |
US20060130048A1 (en) * | 2004-12-13 | 2006-06-15 | Ebay Inc. | Shared schema for software user interface designers and developers |
US7568186B2 (en) * | 2005-06-07 | 2009-07-28 | International Business Machines Corporation | Employing a mirror probe handler for seamless access to arguments of a probed function |
US20070074175A1 (en) * | 2005-09-23 | 2007-03-29 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for dynamic probes for injection and extraction of data for test and monitoring of software |
CN100388195C (zh) * | 2006-02-22 | 2008-05-14 | 北京金山软件有限公司 | 一种64位视窗操作系统下获取函数参数的方法及系统 |
US8359585B1 (en) * | 2007-01-18 | 2013-01-22 | Advanced Testing Technologies, Inc. | Instrumentation ATS/TPS mitigation utilizing I/O data stream |
EP1962194A1 (en) * | 2007-02-23 | 2008-08-27 | Telefonaktiebolaget LM Ericsson (publ) | A method and a system for dynamic probe authentication for test and monitoring of software |
US8500730B2 (en) * | 2007-11-16 | 2013-08-06 | Biosense Webster, Inc. | Catheter with omni-directional optical tip having isolated optical paths |
US8413120B2 (en) | 2008-10-27 | 2013-04-02 | Advanced Micro Devices, Inc. | Method and system for thread monitoring |
CN102023923B (zh) * | 2010-12-28 | 2014-07-02 | 北京邮电大学 | 一种基于别名分析技术的软件测试方法 |
GB2507048A (en) * | 2012-10-16 | 2014-04-23 | Bae Systems Plc | System testing algorithm and apparatus |
US9021428B2 (en) * | 2013-05-29 | 2015-04-28 | Microsoft Technology Licensing, Llc | Troubleshooting visuals and transient expressions in executing applications |
CN103455421B (zh) * | 2013-08-19 | 2016-08-10 | 西安交通大学 | 基于程序控制依赖引导的回归测试案例生成方法 |
US9880818B2 (en) * | 2014-11-05 | 2018-01-30 | Ab Initio Technology Llc | Application testing |
US10936289B2 (en) | 2016-06-03 | 2021-03-02 | Ab Initio Technology Llc | Format-specific data processing operations |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5191646A (en) * | 1986-11-20 | 1993-03-02 | Hitachi, Ltd. | Display method in software development support system |
US5581695A (en) | 1990-05-09 | 1996-12-03 | Applied Microsystems Corporation | Source-level run-time software code debugging instrument |
US5604841A (en) * | 1990-07-06 | 1997-02-18 | United Technologies Corporation | Hierarchical restructuring generic test templates and reusable value spaces for machine failure isolation using qualitative physics |
US5202955A (en) * | 1990-07-06 | 1993-04-13 | United Technologies Corporation | Dynamic assumption ordering for qualitative physics |
US5317740A (en) * | 1991-03-07 | 1994-05-31 | Digital Equipment Corporation | Alternate and iterative analysis of computer programs for locating translatable code by resolving callbacks and other conflicting mutual dependencies |
DE69231873T2 (de) * | 1992-01-08 | 2002-04-04 | Emc Corp | Verfahren zur Synchronisierung von reservierten Bereichen in einer redundanten Speicheranordnung |
JPH0756729A (ja) | 1993-08-10 | 1995-03-03 | Pfu Ltd | プログラムデバッグシステム |
US5604895A (en) * | 1994-02-22 | 1997-02-18 | Motorola Inc. | Method and apparatus for inserting computer code into a high level language (HLL) software model of an electrical circuit to monitor test coverage of the software model when exposed to test inputs |
EP0690378A1 (en) * | 1994-06-30 | 1996-01-03 | Tandem Computers Incorporated | Tool and method for diagnosing and correcting errors in a computer programm |
US5634127A (en) * | 1994-11-30 | 1997-05-27 | International Business Machines Corporation | Methods and apparatus for implementing a message driven processor in a client-server environment |
US6324683B1 (en) * | 1996-02-23 | 2001-11-27 | International Business Machines Corporation | System, method and program for debugging external programs in client/server-based relational database management systems |
GB9622684D0 (en) | 1996-10-31 | 1997-01-08 | Sgs Thomson Microelectronics | An integrated circuit device and method of communication therwith |
US6282701B1 (en) * | 1997-07-31 | 2001-08-28 | Mutek Solutions, Ltd. | System and method for monitoring and analyzing the execution of computer programs |
US6202199B1 (en) * | 1997-07-31 | 2001-03-13 | Mutek Solutions, Ltd. | System and method for remotely analyzing the execution of computer programs |
US6212650B1 (en) | 1997-11-24 | 2001-04-03 | Xilinx, Inc. | Interactive dubug tool for programmable circuits |
US7152027B2 (en) * | 1998-02-17 | 2006-12-19 | National Instruments Corporation | Reconfigurable test system |
US5963726A (en) * | 1998-03-20 | 1999-10-05 | National Instruments Corporation | Instrumentation system and method including an improved driver software architecture |
SE9801678L (sv) | 1998-05-13 | 1999-11-14 | Axis Ab | Datorchip och datoranordning med förbättrad avlusningsförmåga |
EP0992906B1 (en) * | 1998-10-06 | 2005-08-03 | Texas Instruments Inc. | Apparatus and method for software breakpoint in a delay slot |
US6412106B1 (en) * | 1999-06-16 | 2002-06-25 | Intervoice Limited Partnership | Graphical system and method for debugging computer programs |
US6934934B1 (en) * | 1999-08-30 | 2005-08-23 | Empirix Inc. | Method and system for software object testing |
US6405364B1 (en) * | 1999-08-31 | 2002-06-11 | Accenture Llp | Building techniques in a development architecture framework |
JP2001147830A (ja) * | 1999-11-19 | 2001-05-29 | Nec Microcomputer Technology Ltd | リアルタイムosの状態変更方法 |
US6304972B1 (en) * | 2000-01-03 | 2001-10-16 | Massachusetts Institute Of Technology | Secure software system and related techniques |
FR2820222B1 (fr) * | 2001-01-26 | 2003-03-21 | Schneider Automation | Procede de programmation d'une application d'automatisme |
US7917895B2 (en) * | 2001-07-27 | 2011-03-29 | Smartesoft, Inc. | Automated software testing and validation system |
US7539591B2 (en) * | 2001-08-24 | 2009-05-26 | Vi Technology, Inc. | Enterprise test data management system utilizing hierarchical test data models and related methods |
US7107578B1 (en) * | 2001-09-24 | 2006-09-12 | Oracle International Corporation | Techniques for debugging computer programs involving multiple programming languages |
US7047519B2 (en) * | 2001-09-26 | 2006-05-16 | International Business Machines Corporation | Dynamic setting of breakpoint count attributes |
US7134115B2 (en) * | 2002-02-07 | 2006-11-07 | Matsushita Electric Industrial Co., Ltd. | Apparatus, method, and program for breakpoint setting |
JP3764405B2 (ja) * | 2002-05-27 | 2006-04-05 | 株式会社東芝 | デバッグ装置及びデバッグ方法 |
US7124401B2 (en) * | 2002-09-03 | 2006-10-17 | Sap Aktiengesellschaft | Testing versions of applications |
US7219333B2 (en) * | 2002-11-22 | 2007-05-15 | Texas Instruments Incorporated | Maintaining coherent synchronization between data streams on detection of overflow |
US7111281B2 (en) * | 2002-12-26 | 2006-09-19 | International Business Machines Corporation | Method, system, and article of manufacture for debugging utilizing screen pattern recognition and breakpoints |
US7171653B2 (en) * | 2003-06-03 | 2007-01-30 | Hewlett-Packard Development Company, L.P. | Systems and methods for providing communication between a debugger and a hardware simulator |
US7299456B2 (en) * | 2003-09-18 | 2007-11-20 | International Business Machines Corporation | Run into function |
-
2003
- 2003-05-01 US US10/428,733 patent/US8020148B2/en active Active
- 2003-09-22 WO PCT/EP2003/010492 patent/WO2004027623A2/en active IP Right Grant
- 2003-09-22 KR KR1020057004947A patent/KR100976371B1/ko active IP Right Grant
- 2003-09-22 CN CN038253518A patent/CN1701305B/zh not_active Expired - Fee Related
- 2003-09-22 EP EP03748070A patent/EP1576477B1/en not_active Expired - Lifetime
- 2003-09-22 DE DE60305073T patent/DE60305073T2/de not_active Expired - Lifetime
- 2003-09-22 AT AT03748070T patent/ATE325383T1/de not_active IP Right Cessation
- 2003-09-22 JP JP2004568892A patent/JP4959941B2/ja not_active Expired - Lifetime
- 2003-09-22 AU AU2003267394A patent/AU2003267394A1/en not_active Abandoned
-
2011
- 2011-07-12 US US13/180,794 patent/US20110271256A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20110271256A1 (en) | 2011-11-03 |
ATE325383T1 (de) | 2006-06-15 |
JP4959941B2 (ja) | 2012-06-27 |
US8020148B2 (en) | 2011-09-13 |
EP1576477B1 (en) | 2006-05-03 |
JP2006500695A (ja) | 2006-01-05 |
DE60305073D1 (de) | 2006-06-08 |
WO2004027623A3 (en) | 2004-05-13 |
CN1701305B (zh) | 2010-05-05 |
US20040059962A1 (en) | 2004-03-25 |
CN1701305A (zh) | 2005-11-23 |
KR100976371B1 (ko) | 2010-08-18 |
DE60305073T2 (de) | 2006-09-28 |
WO2004027623A2 (en) | 2004-04-01 |
AU2003267394A1 (en) | 2004-04-08 |
EP1576477A2 (en) | 2005-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20110271256A1 (en) | Bi-directional probing of software | |
US4709366A (en) | Computer assisted fault isolation in circuit board testing | |
US5937154A (en) | Manufacturing functional testing of computing devices using microprogram based functional tests applied via the devices own emulation debug port | |
Harrold et al. | An approach to analyzing and testing component-based systems | |
US7519867B2 (en) | Test executive which provides heap validity checking and memory leak detection for user code modules | |
US10768230B2 (en) | Built-in device testing of integrated circuits | |
US7237161B2 (en) | Remote integrated circuit testing method and apparatus | |
US7480826B2 (en) | Test executive with external process isolation for user code modules | |
US9864003B1 (en) | Automated waveform analysis using a parallel automated development system | |
KR20150087227A (ko) | 반도체 장치 검사 환경에서의 디버깅 | |
KR20080048035A (ko) | 소프트웨어의 테스트 및 모니터를 위한 데이터의 주입 및추출을 위한 동적 프로브에 대한 방법 및 시스템 | |
US6961885B2 (en) | System and method for testing video devices using a test fixture | |
US20040216061A1 (en) | Embeddable method and apparatus for functional pattern testing of repeatable program instruction-driven logic circuits via signal signature generation | |
JPS63132346A (ja) | デジタル諭理回路における欠陥分離の方法 | |
US7096397B2 (en) | Dft technique for avoiding contention/conflict in logic built-in self-test | |
CN114631031A (zh) | 用于测试一个或多个被测器件的自动化测试设备、过程和计算机程序,其中不同的测试活动利用被测器件资源的子集 | |
US20130060502A1 (en) | Thermal scan system | |
JP4574894B2 (ja) | 半導体試験用プログラムデバッグ装置 | |
US20180136273A1 (en) | Method and Apparatus for Offline Supported Adaptive Testing | |
US20060247879A1 (en) | Site loops | |
Angione et al. | An optimized burn-in stress flow targeting interconnections logic to embedded memories in automotive systems-on-chip | |
Erikslund | Development and Implementation of a Test Sequence for a Functional Tester | |
Carlsson et al. | Protocol requirements in an SJTAG/IJTAG environment | |
Smith | The ACT (Automatic Computer Troubleshooting) project | |
WO2009022305A1 (en) | An integrated circuit having an analog circuit portion and a method for testing such an integrated circuit |
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: 20130725 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140724 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20150727 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20160727 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20170728 Year of fee payment: 8 |