{ "name": "Items BOM Test", "description": "BOM 관리 테스트 (조회, 트리, 요약, 검증)", "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" } }, { "id": "list_items", "name": "2. 품목 목록 조회 (BOM 있는 품목 찾기)", "method": "GET", "endpoint": "/api/v1/items?page=1&per_page=10&item_type=FG", "headers": { "Authorization": "Bearer {{login.token}}" }, "expect": { "status": [200], "jsonPath": { "$.success": true } }, "extract": { "firstItemId": "$.data.data[0].id" } }, { "id": "get_bom_list", "name": "3. BOM 목록 조회", "method": "GET", "endpoint": "/api/v1/items/{{list_items.firstItemId}}/bom", "headers": { "Authorization": "Bearer {{login.token}}" }, "expect": { "status": [200], "jsonPath": { "$.success": true } }, "continueOnFailure": true }, { "id": "get_bom_tree", "name": "4. BOM 트리 조회", "method": "GET", "endpoint": "/api/v1/items/{{list_items.firstItemId}}/bom/tree", "headers": { "Authorization": "Bearer {{login.token}}" }, "expect": { "status": [200], "jsonPath": { "$.success": true } }, "continueOnFailure": true }, { "id": "get_bom_summary", "name": "5. BOM 요약 조회", "method": "GET", "endpoint": "/api/v1/items/{{list_items.firstItemId}}/bom/summary", "headers": { "Authorization": "Bearer {{login.token}}" }, "expect": { "status": [200], "jsonPath": { "$.success": true } }, "continueOnFailure": true }, { "id": "validate_bom", "name": "6. BOM 검증", "method": "GET", "endpoint": "/api/v1/items/{{list_items.firstItemId}}/bom/validate", "headers": { "Authorization": "Bearer {{login.token}}" }, "expect": { "status": [200], "jsonPath": { "$.success": true } }, "continueOnFailure": true }, { "id": "get_bom_categories", "name": "7. BOM 카테고리 목록", "method": "GET", "endpoint": "/api/v1/items/{{list_items.firstItemId}}/bom/categories", "headers": { "Authorization": "Bearer {{login.token}}" }, "expect": { "status": [200], "jsonPath": { "$.success": true } }, "continueOnFailure": true } ] }