#!/usr/bin/env php 0 @1 - 执行$result3['suites']) && is_array($result3['cases'] @1 - 执行$result4) && isset($result4['suites'] @1 - 执行$result5) && empty($result5['suites']) && empty($result5['cases'] @1 */ // 1. 导入依赖(路径固定,不可修改) include dirname(__FILE__, 5) . '/test/lib/init.php'; include dirname(__FILE__, 2) . '/lib/model.class.php'; // 2. 用户登录(选择合适角色) su('admin'); // 3. 创建测试实例(变量名与模块名一致) $testtaskTest = new testtaskModelTest(); // 4. 🔴 强制要求:必须包含至少5个测试步骤 // 测试步骤1:解析标准JUnit XML格式结果 $junitXmlContent = ' '; $junitXmlObject = simplexml_load_string($junitXmlContent); $result1 = $testtaskTest->parseXMLResultTest($junitXmlObject, 1, 'junit'); r(isset($result1['suites']) && isset($result1['cases']) && isset($result1['results'])) && p() && e('1'); // 测试步骤2:解析包含失败用例的XML结果 $failureXmlContent = ' Expected: 5.0 but was: Infinity '; $failureXmlObject = simplexml_load_string($failureXmlContent); $result2 = $testtaskTest->parseXMLResultTest($failureXmlObject, 1, 'junit'); r(isset($result2['suites']) && count($result2['cases']) > 0) && p() && e('1'); // 测试步骤3:解析包含跳过用例的XML结果 $skippedXmlContent = ' '; $skippedXmlObject = simplexml_load_string($skippedXmlContent); $result3 = $testtaskTest->parseXMLResultTest($skippedXmlObject, 1, 'junit'); r(isset($result3['suites']) && is_array($result3['cases'])) && p() && e('1'); // 测试步骤4:解析PHPUnit格式的XML结果 $phpunitXmlContent = ' '; $phpunitXmlObject = simplexml_load_string($phpunitXmlContent); $result4 = $testtaskTest->parseXMLResultTest($phpunitXmlObject, 1, 'phpunit'); r(is_array($result4) && isset($result4['suites'])) && p() && e('1'); // 测试步骤5:解析空XML或无效结构 $emptyXmlContent = ' no test data '; $emptyXmlObject = simplexml_load_string($emptyXmlContent); $result5 = $testtaskTest->parseXMLResultTest($emptyXmlObject, 1, 'junit'); r(is_array($result5) && empty($result5['suites']) && empty($result5['cases'])) && p() && e('1');