$error, 'http_code' => $httpCode]; } return ['response' => $response, 'http_code' => $httpCode]; } /** * 测试用例1:正常更新骑手基本信息 */ echo "测试1:正常更新骑手基本信息\n"; echo "----------------------------------------\n"; $test_data = [ 'rider_id' => $test_rider_id, 'rider_name' => '张三测试', 'rider_phone' => '13800138001', 'emergency_name' => '李四', 'emergency_phone' => '13900139001', 'emergency_relation' => '父亲', 'work_status' => 1, 'status' => 1 ]; $result = sendPostRequest($base_url . '/index.php/Retail/Rider/updateRider', $test_data); if (isset($result['error'])) { echo "请求错误: " . $result['error'] . "\n"; } else { echo "HTTP状态码: " . $result['http_code'] . "\n"; echo "响应内容: " . $result['response'] . "\n"; $response_data = json_decode($result['response'], true); if ($response_data) { echo "解析结果: \n"; echo "- 状态: " . ($response_data['status'] ? '成功' : '失败') . "\n"; echo "- 消息: " . $response_data['msg'] . "\n"; if (isset($response_data['data'])) { echo "- 更新字段: " . implode(', ', $response_data['data']['updated_fields']) . "\n"; } } } echo "\n"; /** * 测试用例2:参数验证 - 缺少rider_id */ echo "测试2:参数验证 - 缺少rider_id\n"; echo "----------------------------------------\n"; $test_data = [ 'rider_name' => '测试骑手' ]; $result = sendPostRequest($base_url . '/index.php/Retail/Rider/updateRider', $test_data); if (isset($result['error'])) { echo "请求错误: " . $result['error'] . "\n"; } else { echo "HTTP状态码: " . $result['http_code'] . "\n"; echo "响应内容: " . $result['response'] . "\n"; } echo "\n"; /** * 测试用例3:数据验证 - 手机号格式错误 */ echo "测试3:数据验证 - 手机号格式错误\n"; echo "----------------------------------------\n"; $test_data = [ 'rider_id' => $test_rider_id, 'rider_phone' => '12345678901' // 错误的手机号格式 ]; $result = sendPostRequest($base_url . '/index.php/Retail/Rider/updateRider', $test_data); if (isset($result['error'])) { echo "请求错误: " . $result['error'] . "\n"; } else { echo "HTTP状态码: " . $result['http_code'] . "\n"; echo "响应内容: " . $result['response'] . "\n"; } echo "\n"; /** * 测试用例4:数据验证 - 身份证号格式错误 */ echo "测试4:数据验证 - 身份证号格式错误\n"; echo "----------------------------------------\n"; $test_data = [ 'rider_id' => $test_rider_id, 'id_card' => '123456789012345678' // 错误的身份证号格式 ]; $result = sendPostRequest($base_url . '/index.php/Retail/Rider/updateRider', $test_data); if (isset($result['error'])) { echo "请求错误: " . $result['error'] . "\n"; } else { echo "HTTP状态码: " . $result['http_code'] . "\n"; echo "响应内容: " . $result['response'] . "\n"; } echo "\n"; /** * 测试用例5:数据验证 - 健康证过期时间为过去时间 */ echo "测试5:数据验证 - 健康证过期时间为过去时间\n"; echo "----------------------------------------\n"; $test_data = [ 'rider_id' => $test_rider_id, 'health_cert_expire' => '2020-01-01' // 过去的时间 ]; $result = sendPostRequest($base_url . '/index.php/Retail/Rider/updateRider', $test_data); if (isset($result['error'])) { echo "请求错误: " . $result['error'] . "\n"; } else { echo "HTTP状态码: " . $result['http_code'] . "\n"; echo "响应内容: " . $result['response'] . "\n"; } echo "\n"; /** * 测试用例6:位置信息更新 */ echo "测试6:位置信息更新\n"; echo "----------------------------------------\n"; $test_data = [ 'rider_id' => $test_rider_id, 'last_location_lat' => 39.9042, 'last_location_lng' => 116.4074 ]; $result = sendPostRequest($base_url . '/index.php/Retail/Rider/updateRider', $test_data); if (isset($result['error'])) { echo "请求错误: " . $result['error'] . "\n"; } else { echo "HTTP状态码: " . $result['http_code'] . "\n"; echo "响应内容: " . $result['response'] . "\n"; } echo "\n"; /** * 测试用例7:不存在的骑手ID */ echo "测试7:不存在的骑手ID\n"; echo "----------------------------------------\n"; $test_data = [ 'rider_id' => 99999, // 不存在的ID 'rider_name' => '测试骑手' ]; $result = sendPostRequest($base_url . '/index.php/Retail/Rider/updateRider', $test_data); if (isset($result['error'])) { echo "请求错误: " . $result['error'] . "\n"; } else { echo "HTTP状态码: " . $result['http_code'] . "\n"; echo "响应内容: " . $result['response'] . "\n"; } echo "\n"; /** * 测试用例8:XSS攻击测试 */ echo "测试8:XSS攻击测试\n"; echo "----------------------------------------\n"; $test_data = [ 'rider_id' => $test_rider_id, 'rider_name' => '', 'emergency_name' => '' ]; $result = sendPostRequest($base_url . '/index.php/Retail/Rider/updateRider', $test_data); if (isset($result['error'])) { echo "请求错误: " . $result['error'] . "\n"; } else { echo "HTTP状态码: " . $result['http_code'] . "\n"; echo "响应内容: " . $result['response'] . "\n"; } echo "\n"; echo "=== 测试完成 ===\n"; echo "\n使用说明:\n"; echo "1. 请根据实际情况修改 \$base_url 和 \$test_rider_id\n"; echo "2. 确保数据库中存在对应的骑手记录\n"; echo "3. 如果测试失败,请检查:\n"; echo " - 数据库连接是否正常\n"; echo " - 相关Model类是否存在\n"; echo " - 权限验证是否通过\n"; echo " - 日志文件中的错误信息\n"; ?>