{ "name": "Auth Menus Test", "description": "메뉴/권한 테스트 (목록, 트리, 권한 매트릭스)", "version": "1.0", "config": { "baseUrl": "", "timeout": 30000, "stopOnFailure": false }, "variables": { "user_id": "{{$env.FLOW_TESTER_USER_ID}}", "user_pwd": "{{$env.FLOW_TESTER_USER_PWD}}" }, "steps": [ { "id": "login", "name": "1. 로그인", "method": "POST", "endpoint": "/api/v1/login", "body": { "user_id": "{{user_id}}", "user_pwd": "{{user_pwd}}" }, "expect": { "status": [200], "jsonPath": { "$.access_token": "@isString" } }, "extract": { "token": "$.access_token", "userId": "$.user.id" } }, { "id": "list_menus", "name": "2. 메뉴 목록 조회", "method": "GET", "endpoint": "/api/v1/menus", "headers": { "Authorization": "Bearer {{login.token}}" }, "expect": { "status": [200], "jsonPath": { "$.success": true } } }, { "id": "menu_sync_status", "name": "3. 메뉴 동기화 상태", "method": "GET", "endpoint": "/api/v1/menus/sync-status", "headers": { "Authorization": "Bearer {{login.token}}" }, "expect": { "status": [200], "jsonPath": { "$.success": true } }, "continueOnFailure": true }, { "id": "available_global_menus", "name": "4. 사용 가능한 글로벌 메뉴", "method": "GET", "endpoint": "/api/v1/menus/available-global", "headers": { "Authorization": "Bearer {{login.token}}" }, "expect": { "status": [200], "jsonPath": { "$.success": true } }, "continueOnFailure": true }, { "id": "user_menu_matrix", "name": "5. 사용자 권한 매트릭스", "method": "GET", "endpoint": "/api/v1/permissions/users/{{login.userId}}/menu-matrix", "headers": { "Authorization": "Bearer {{login.token}}" }, "expect": { "status": [200], "jsonPath": { "$.success": true } }, "continueOnFailure": true } ] }