Visual Studio 2015 Ordered Test 구조 분석 및 재구성 – UltraArt 테스트 시나리오 개선 #1

Soyee Sung·2025년 8월 9일
0

1. 프로젝트 배경

Condor 시스템의 UI 기능 검증을 위해 Visual Studio 2015 기반 Ordered Test로 자동화 테스트를 수행.
그 중 UltraArt는 Condor 시스템의 핵심 영상 처리 기능으로, 다양한 모드와 파라미터 조합에서 안정성 검증 필요.

테스트 커버리지를 유지하면서도 실행 효율을 높일 필요성 제기.

2. 문제 상황

.sln 없이 .orderedtest + DLL 파일만 존재해 편집 난이도 ↑

테스트 순서 변경 시 UI 편집 불가 → XML 직접 수정 필요

중복 ID 및 불명확한 호출 경로(storage)가 실행 실패 원인

대표 케이스와 확장 케이스 구분이 없어 테스트 실행 시간이 불필요하게 길어짐

Bmode_ultraart_test에 scan 대기시간이 없음

3. 해결 과정

(0) DLL 안에 들어있는 테스트 메서드 목록을 전부 뽑아 추출


(1) ordered test 파일 구조 분석

DLL 내부 테스트 메서드 목록 추출 (MSTest CLI 활용)

각 .orderedtest 파일에서 와 storage 경로 매핑

중복 호출 및 불필요한 단계 식별

(2) Ordered Test 직접 편집

XML 구조 이해: 순서 조정, GUID(id) 유니크 값 재발급

대표 테스트 케이스와 확장 케이스를 별도 파일로 분리 관리

하위 Ordered Test 호출 구조(storage 경로) 정리

(3) 대표·확장 테스트 설계

  • 대표 케이스: 핵심 기능 빠른 검증 목적. 핵심 흐름만 유지, 불필요한 반복 제거. 목적은 빌드/시스템 상태를 신속히 판단
  • 확장 케이스: 복합 조건 및 예외 시나리오 포함. 세부 기능 및 예외 상황 포함. 목적은 기능별 동작 안정성 및 모드 전환 시 예외 검증

Main test

  • Filename: Condor_BAT_UltraArtSampleTest.orderedtest
    " Probe change -> Exam select(Cardiac, Abdomen) -> condor_bmode_ultraart 파일 실행" 반복 -> Auto TEQ 나옴

Bmode_ultraart_test

  • Filename: condor_bmode_ultraart
  • Structure: UA Index change -> freeze -> Index change -> freeze
  • Updated structure:
  1. Scan -> UA Index change
  2. Freeze -> Scan -> verify Frozen -> UA Index change -> unfreeze
  3. Dual -> UA Index change -> Disable Dual
  4. Dual -> Freeze -> Scan -> verify Frozen -> UA Index change -> unfreeze -> Disable Dual
  5. Live Dual -> UA Index change -> Disable Live Dual
  6. Depth -> UA Index change 반복

4. 성과

Ordered Test 유지보수 표준 구조 수립

신규 기능 추가 시 재활용 가능성 확보

5. 인사이트

테스트 설계 시 대표-확장 구조 분리는 필수
.orderedtest XML 직접 편집 역량 확보 → UI 한계 극복
DLL 기반 테스트 자산 재활용을 위해 ID·storage 관리 중요
Ordered Test를 계층적으로 설계하면 유지보수성과 재활용성이 비약적으로 향상
문제 재현 속도와 디버깅 효율을 높이는 것이 자동화 테스트의 핵심 가치

6. Next Step

파일 명 및 경로 점검 – 테스트 실행 전 파일 이름과 경로에 오류가 없는지 확인
빌드 완료 및 시스템 실행 검증 – 빌드 후 시스템이 정상적으로 구동되는지 확인 및 필요 시 수정
데모 진행 – 주요 기능 및 시나리오 시연
테스트 케이스 고도화 – 기존 테스트 케이스를 보완하고 시나리오 범위 확장
Quad 기능 확인 – Quad Display 관련 동작 및 안정성 검증

0개의 댓글