#!/usr/bin/env php loadYaml('pipeline')->gen(5); // 设置用户登录 su('admin'); // 创建测试实例 $sonarqube = new sonarqubeModelTest(); // 测试参数定义 $validSonarqubeID = 2; $invalidSonarqubeID1 = 0; $invalidSonarqubeID2 = 999; $keyword = 'test'; $projectKey = 'unittest-project'; $emptyKeyword = ''; // 测试步骤1:正常sonarqubeID获取项目列表 r($sonarqube->apiGetProjectsTest($validSonarqubeID)) && p('0:name') && e('Special Key Test'); // 步骤1:正常情况 // 测试步骤2:使用关键字搜索项目 r($sonarqube->apiGetProjectsTest($validSonarqubeID, $keyword)) && p('0:key') && e('special.key:test-123'); // 步骤2:关键字搜索 // 测试步骤3:使用projectKey参数获取特定项目 r($sonarqube->apiGetProjectsTest($validSonarqubeID, '', $projectKey)) && p() && e('return empty'); // 步骤3:projectKey查询 // 测试步骤4:无效sonarqubeID(0)测试 r($sonarqube->apiGetProjectsTest($invalidSonarqubeID1)) && p() && e('return empty'); // 步骤4:无效ID(0) // 测试步骤5:无效sonarqubeID(999)测试 r($sonarqube->apiGetProjectsTest($invalidSonarqubeID2)) && p() && e('return empty'); // 步骤5:无效ID(999) // 测试步骤6:同时使用keyword和projectKey参数 r($sonarqube->apiGetProjectsTest($validSonarqubeID, $keyword, $projectKey)) && p() && e('return empty'); // 步骤6:组合参数 // 测试步骤7:使用空关键字搜索(相当于获取所有项目) r($sonarqube->apiGetProjectsTest($validSonarqubeID, $emptyKeyword)) && p('0:name') && e('Special Key Test'); // 步骤7:空关键字