상태 전이 모델 테스트 생성기

상태 전이 모델 테스트 생성기

로컬 기호 모델 분석만 합니다. 실제 앱 코드나 guard 조건식은 실행하지 않습니다.

1. 상태 머신 정의

JSON 키: states, events, initial, transitions. 각 전이는 from, event, 선택 guard 라벨, to를 가집니다.

JSON 모델을 붙여 넣거나 예제를 불러오세요.

댓글과 질문

상태 전이 모델 테스트 생성기

상태, 이벤트, 시작 상태와 전이를 JSON으로 정의하면 구조적 도달성, 빠진 상태·이벤트 쌍, guard 선택이 필요한 분기를 검사합니다. 시작 상태에서 도달 가능한 각 전이까지의 최단 경로를 테스트 아이디어로 생성합니다. guard는 실행되는 조건식이 아니라 이름표입니다.

주요 기능

  • 상태·이벤트 이름, 참조, 중복 분기와 크기 제한 검증
  • 도달 가능/불가 상태와 전이 번호 계산
  • 누락된 상태·이벤트 쌍과 guard 선택이 필요한 분기 표시
  • 도달 가능한 전이마다 최단 구조적 테스트 시퀀스와 예상 상태 경로 생성
  • 이벤트·guard 시퀀스를 모델에 대조하고 분석 JSON 다운로드

사용 방법

  1. 예제를 불러오거나 states, events, initial, transitions를 담은 JSON 모델을 붙여 넣습니다.
  2. 구조적 도달성과 누락/모호한 상태·이벤트 쌍을 확인합니다.
  3. 전이별 테스트 시퀀스와 예상 상태 경로를 봅니다.
  4. 이벤트 시퀀스 JSON을 입력하고 필요한 guard 라벨을 지정해 모델에서 실행합니다.
  5. 결과를 확인한 뒤 분석 보고서와 테스트 사례를 내려받습니다.

활용 예시

  • 양식이나 업무 흐름의 전이 커버리지 사례 작성
  • 선언한 UI 흐름에서 도달할 수 없는 상태 찾기
  • 구현 전에 빠진 이벤트 처리와 모호한 guard 분기 검토

자주 묻는 질문

guard 조건식이 실행되나요?

아니요. guard는 해석하지 않는 이름표입니다. 도달성과 생성 경로는 해당 guard를 만족시킬 수 있다고 가정한 구조적 결과이므로 실제 실행 가능성을 증명하지 않습니다. 시뮬레이션에는 필요한 guard 라벨을 정확히 적어야 합니다.

여기서 전이 커버리지란 무엇인가요?

시작 상태에서 각 도달 가능 전이의 출발 상태까지 가는 최단 구조 경로에 목표 전이를 덧붙여 사례 하나씩 만듭니다. 전체 테스트 묶음을 최소화하거나 실제 앱을 실행하지는 않습니다.

누락된 전이는 어떻게 정하나요?

선언된 모든 상태·이벤트 쌍 중 전이가 하나도 없는 경우를 표시합니다. 도달 불가 상태도 포함되며, 의도적으로 부분 전이만 정의했다면 오류가 아닐 수 있습니다.

모호한 분기는 어떻게 처리하나요?

같은 상태·이벤트에 서로 다른 guard 라벨 전이가 여러 개면 표시합니다. 수동 시뮬레이션에서는 guard를 지정해야 합니다. 실제 guard 조건이 서로 겹치는지는 판단하지 않습니다.

모델에 순환이 있어도 되나요?

네. 순환과 자기 전이는 허용됩니다. 너비 우선 탐색으로 각 도달 상태까지 가장 짧은 구조 경로만 보존해 무한 반복을 피합니다.

입력과 크기 제한은 무엇인가요?

JSON의 states/events 배열, initial 상태, from/event/선택 guard/to 전이를 사용합니다. 이름은 짧은 식별자입니다. 모델은 128KiB·상태40개·이벤트20개·전이400개, 수동 시퀀스는200단계까지입니다.

개인정보 안내

모델과 시퀀스는 브라우저 메모리에서만 처리하며 실제 애플리케이션에 접속하지 않습니다. 내려받는 JSON에는 상태·이벤트 이름이 포함되므로 공유 전에 확인하세요.

관련 도구

결정트리 학습 실험실데이터 계약 규칙 검사기목 데이터 생성기WebAssembly 모듈 검사기다국어 연결 행렬 검사기구문 트리 질의 실험실컨테이너 빌드 단계 분석기의존성 그래프 탐색기버전 제약 충돌 분석기작업 스케줄 충돌 검사기패치 검토 작업대소스맵 탐색기다국어 카탈로그 검사기구조화 데이터 대조기HTTP 아카이브 분석기웹훅 서명 실험실Protobuf 스키마 작업대GraphQL 스키마 실험실Avro 스키마 호환성 검사기로컬 SQL 데이터 작업대스키마 기반 입력 폼 생성기3D 메쉬 검사·복구기관망 유량·압력 실험실로봇팔 운동학 실험열저항 회로 실험실보 휨 실험실기어열 배치 실험공차 누적 실험실센서 교정 곡선 맞추기PCB 적층 비교 설계기디지털 필터 설계기도로망 도달 범위 지도태양 그림자 배치 실험GPS 오차 시뮬레이터디지털 논리 회로 실험아날로그 회로 실험실링크 기구 운동 실험해석용 메쉬 생성기OpenAPI 계약 검사기DB 스키마 변경 계획기수식 차원 검사기트러스 힘 실험실논리식 최소화 실험실제어계 응답 실험실대기행렬 시뮬레이터위치 구역 출입 이벤트 실험실좌표계 변환 실험실측량 폐합 검산 실험실위성·래스터 구간 분류단계구분도 설계기지도 인쇄 편집기GeoTIFF 래스터 재투영고도 등고선 생성기지형 가시영역 실험실지형 유역 탐색기오프라인 지도 타일 패키저텍스트 파일 인코딩 작업대파일 경로 호환성 검사기SBOM 라이선스 탐색기파일 형식 위장 검사기npm 잠금 파일 충돌 해결기소스 비밀값 점검기오프라인 웹 자료 패키저인증서 체인 검사기토렌트 메타정보 검사기파일 분할 전송 패키저로컬 파일 암호 금고동일 파일 찾기압축 파일 작업대디자인 토큰 관리기반응형 간격 체계 설계기반응형 타이포 시스템 설계기포장 전개도 설계기SVG 아이콘 스프라이트 묶기Flexbox 배치 설계기CSS Grid 배치 설계기정규 언어 동치 검사기Markdown 문서 묶음 검사기로그 패턴 추출기반응형 HTML 레이아웃 검사기메일 HTML 렌더 검토기내부 링크 구조 분석기페트리넷 흐름 실험Git 이력 그래프 탐색기HTTP 요청 명령 설계기바이너리 프로토콜 설계기바이너리 Hex 편집기바이너리 차이 패치 만들기파일 전자서명 작업대API 모의 응답 실험실데이터 열 매핑 설계기이벤트 로그 세션 분석기데이터베이스 관계도 설계기시계열 누락 검사기학습 데이터 분할기데이터 흐름 계보 작성기데이터 비식별 처리기JSON Schema 검증기항목 동시출현 분석기robots 규칙 시뮬레이터HTML 검색 기본 검사기접근성 구조 검사기RSS·Atom 피드 작성기IndexNow 배포 알림 준비기검색 로봇 로그 분석기CSP 정책 검토기검색 실적 CSV 분석기CSV 수식 위험 검사기CORS 응답 시뮬레이터HTTP 캐시 동작 실험실쿠키 속성 검사기성능 추적 파일 분석기사이트맵 구조 검사기파일 일괄 이름 바꾸기파일 묶음 무결성 검증기폴더 용량 지도폴더 차이 검토기방문 순서 최적화GeoJSON 지도 편집기지도 영역 중첩 분석기지도 라벨 배치기공간 속성 결합기GeoJSON 공간 위상 검사기GPS 이동 기록 분석기이동 기록 위치 가림표 관계 결합기피벗 테이블 작업대데이터 품질 프로파일러표 데이터 정제 작업대기록 대사 도구데이터 사전 작성기canonical 관계 검사기리다이렉트 계획 검증기HTTP 응답 속도·핑 참고 테스트내 브라우저·시스템 정보JSON ↔ YAML 변환기XML ↔ JSON 변환기HTML 포맷터JavaScript 압축기.gitignore 생성기라이선스 생성기User-Agent 분석기비밀번호 강도 검사코드 이미지 만들기XML 포맷터HTTP 상태 코드 찾기MIME 타입 찾기JS·SQL 문자열 이스케이프CSS 박스 그림자 생성기CSS 그라데이션 생성기들여쓰기 변환기진법 변환기유니코드 이스케이프 변환기유니코드 문자 분석기JSON 구조 비교기Markdown 표 생성기Base64 인코더JSON 포맷터URL 인코더SQL 포맷터Cron 표현식 생성기정규식 테스터UUID 생성기해시 생성기타임스탬프 변환기JWT 디코더HTML 엔티티 변환기Markdown 미리보기CSS Minifier메타태그·OG 생성기JSON CSV 변환대소문자·케이스 변환이미지 Base64 변환
개발 도구 도구 전체 보기 →이미지/미디어 →텍스트/변환 →생활/재미 →