#!/usr/bin/env php id->range('1-10'); $table->type->range('sonarqube{5},gitlab{3},jenkins{2}'); $table->name->range('SonarQube测试服务器{5},GitLab服务器{3},Jenkins服务器{2}'); $table->url->range('https://test.sonarqube.com{5},https://gitlab.com{3},https://jenkins.com{2}'); $table->account->range('admin{10}'); $table->token->range('dGVzdF90b2tlbl8xMjM={10}'); $table->deleted->range('0'); $table->gen(10); // 设置测试用户权限 su('admin'); // 测试参数定义 $validSonarqubeID = 1; $invalidSonarqubeID = 999; $negativeSonarqubeID = -1; $emptyProjectKey = ''; $nonExistentProjectKey = 'non_existent_project_123'; $validProjectKey = 'test_delete_project_123'; $specialCharProjectKey = 'test@#$%^&*()_project'; // 创建测试实例 $sonarqubeTest = new sonarqubeModelTest(); // 测试步骤1:使用无效的sonarqubeID删除项目 r($sonarqubeTest->apiDeleteProjectTest($invalidSonarqubeID, $emptyProjectKey)) && p() && e('return false'); // 测试步骤2:使用有效sonarqubeID但空projectKey删除项目 r($sonarqubeTest->apiDeleteProjectTest($validSonarqubeID, $emptyProjectKey)) && p() && e('return true'); // 测试步骤3:使用有效sonarqubeID但不存在的projectKey r($sonarqubeTest->apiDeleteProjectTest($validSonarqubeID, $nonExistentProjectKey)) && p() && e('return true'); // 测试步骤4:使用有效参数删除项目 r($sonarqubeTest->apiDeleteProjectTest($validSonarqubeID, $validProjectKey)) && p() && e('return true'); // 测试步骤5:测试负数sonarqubeID的处理 r($sonarqubeTest->apiDeleteProjectTest($negativeSonarqubeID, $validProjectKey)) && p() && e('return false'); // 测试步骤6:使用特殊字符的projectKey删除项目 r($sonarqubeTest->apiDeleteProjectTest($validSonarqubeID, $specialCharProjectKey)) && p() && e('return true'); // 测试步骤7:测试边界值 - 零值ID r($sonarqubeTest->apiDeleteProjectTest(0, $validProjectKey)) && p() && e('return false');