82 lines
2.4 KiB
Batchfile
82 lines
2.4 KiB
Batchfile
|
|
@echo off
|
|||
|
|
chcp 65001 >nul
|
|||
|
|
setlocal enabledelayedexpansion
|
|||
|
|
|
|||
|
|
echo ========================================
|
|||
|
|
echo 纪检初核系统 - 创建项目接口测试
|
|||
|
|
echo ========================================
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
:: 配置
|
|||
|
|
set BASE_URL=http://localhost:8080
|
|||
|
|
set USERNAME=admin
|
|||
|
|
set PASSWORD=admin123
|
|||
|
|
|
|||
|
|
:: 第一步:获取Token
|
|||
|
|
echo [1/2] 获取登录Token...
|
|||
|
|
curl -s -X POST "%BASE_URL%/login/test?username=%USERNAME%&password=%PASSWORD%" -H "Content-Type: application/json" > token_response.json
|
|||
|
|
|
|||
|
|
:: 使用jq或findstr提取token(Windows兼容方式)
|
|||
|
|
for /f "tokens=2 delims=:" %%a in ('type token_response.json ^| findstr "token"') do (
|
|||
|
|
set TOKEN_RAW=%%a
|
|||
|
|
)
|
|||
|
|
:: 去除引号和逗号
|
|||
|
|
set TOKEN=%TOKEN_RAW:"=%
|
|||
|
|
set TOKEN=%TOKEN:,=%
|
|||
|
|
set TOKEN=%TOKEN: =%
|
|||
|
|
|
|||
|
|
echo Token获取成功: %TOKEN%
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
:: 第二步:创建项目
|
|||
|
|
echo [2/2] 测试创建项目接口...
|
|||
|
|
|
|||
|
|
:: 测试用例1:使用default配置方式创建项目
|
|||
|
|
echo.
|
|||
|
|
echo === 测试用例1: 创建全局默认配置项目 ===
|
|||
|
|
curl -s -X POST "%BASE_URL%/ccdi/project" ^
|
|||
|
|
-H "Content-Type: application/json" ^
|
|||
|
|
-H "Authorization: Bearer %TOKEN%" ^
|
|||
|
|
-d "{\"projectName\":\"测试项目001\",\"description\":\"这是一个测试项目\",\"configType\":\"default\"}"
|
|||
|
|
|
|||
|
|
echo.
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
:: 测试用例2:使用custom配置方式创建项目
|
|||
|
|
echo === 测试用例2: 创建自定义配置项目 ===
|
|||
|
|
curl -s -X POST "%BASE_URL%/ccdi/project" ^
|
|||
|
|
-H "Content-Type: application/json" ^
|
|||
|
|
-H "Authorization: Bearer %TOKEN%" ^
|
|||
|
|
-d "{\"projectName\":\"测试项目002\",\"description\":\"自定义配置的测试项目\",\"configType\":\"custom\"}"
|
|||
|
|
|
|||
|
|
echo.
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
:: 测试用例3:缺少必填字段(预期失败)
|
|||
|
|
echo === 测试用例3: 缺少必填字段(预期失败) ===
|
|||
|
|
curl -s -X POST "%BASE_URL%/ccdi/project" ^
|
|||
|
|
-H "Content-Type: application/json" ^
|
|||
|
|
-H "Authorization: Bearer %TOKEN%" ^
|
|||
|
|
-d "{\"description\":\"缺少项目名称\"}"
|
|||
|
|
|
|||
|
|
echo.
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
:: 测试用例4:configType值无效(预期失败)
|
|||
|
|
echo === 测试用例4: configType值无效(预期失败) ===
|
|||
|
|
curl -s -X POST "%BASE_URL%/ccdi/project" ^
|
|||
|
|
-H "Content-Type: application/json" ^
|
|||
|
|
-H "Authorization: Bearer %TOKEN%" ^
|
|||
|
|
-d "{\"projectName\":\"测试项目003\",\"configType\":\"invalid\"}"
|
|||
|
|
|
|||
|
|
echo.
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
:: 清理临时文件
|
|||
|
|
del token_response.json 2>nul
|
|||
|
|
|
|||
|
|
echo ========================================
|
|||
|
|
echo 测试完成
|
|||
|
|
echo ========================================
|
|||
|
|
pause
|