diff --git a/module/testcase/model.php b/module/testcase/model.php index db5d3216be..cac1db8c49 100644 --- a/module/testcase/model.php +++ b/module/testcase/model.php @@ -2583,6 +2583,7 @@ class testcaseModel extends model } /** + * 通过产品和模块获取步骤信息。 * Get step by product and module. * * @param int $productID @@ -2590,7 +2591,7 @@ class testcaseModel extends model * @access public * @return array */ - function getStepByProductAndModule($productID, $moduleID) + function getStepByProductAndModule(int $productID, int $moduleID): array { $fields = "t1.id as testcaseID," . "t2.id as stepID," diff --git a/module/testcase/test/model/getstepbyproductandmodule.php b/module/testcase/test/model/getstepbyproductandmodule.php new file mode 100644 index 0000000000..9c0fc4dfbb --- /dev/null +++ b/module/testcase/test/model/getstepbyproductandmodule.php @@ -0,0 +1,37 @@ +#!/usr/bin/env php +config('modulecase')->gen('100'); +zdTable('casestep')->gen('100'); +zdTable('user')->gen('1'); + +su('admin'); + +/** + +title=测试 testcaseModel->getStepByProductAndModule(); +cid=1 +pid=1 + +*/ + +$productIdList = array(0, 1, 2, 3); +$moduleIdList = array(0, 1821, 1825, 1829); + +$testcase = new testcaseTest(); + +r($testcase->getStepByProductAndModuleTest($productIdList[0], $moduleIdList[0])) && p() && e('0'); // 获取产品 0 模块 0 的步骤信息 +r($testcase->getStepByProductAndModuleTest($productIdList[1], $moduleIdList[0])) && p() && e('testcaseID:1 stepID: 1. testcaseID:2 stepID: 2. testcaseID:3 stepID: 3. testcaseID:4 stepID: 4.'); // 获取产品 1 模块 0 的步骤信息 +r($testcase->getStepByProductAndModuleTest($productIdList[1], $moduleIdList[1])) && p() && e('testcaseID:1 stepID: 1.'); // 获取产品 1 模块 1821 的步骤信息 +r($testcase->getStepByProductAndModuleTest($productIdList[1], $moduleIdList[2])) && p() && e('0'); // 获取产品 1 模块 1825 的步骤信息 +r($testcase->getStepByProductAndModuleTest($productIdList[1], $moduleIdList[3])) && p() && e('0'); // 获取产品 1 模块 1829 的步骤信息 +r($testcase->getStepByProductAndModuleTest($productIdList[2], $moduleIdList[0])) && p() && e('testcaseID:5 stepID: 5. testcaseID:6 stepID: 6. testcaseID:7 stepID: 7. testcaseID:8 stepID: 8.'); // 获取产品 2 模块 0 的步骤信息 +r($testcase->getStepByProductAndModuleTest($productIdList[2], $moduleIdList[1])) && p() && e('0'); // 获取产品 2 模块 1821 的步骤信息 +r($testcase->getStepByProductAndModuleTest($productIdList[2], $moduleIdList[2])) && p() && e('testcaseID:5 stepID: 5.'); // 获取产品 2 模块 1825 的步骤信息 +r($testcase->getStepByProductAndModuleTest($productIdList[2], $moduleIdList[3])) && p() && e('0'); // 获取产品 2 模块 1829 的步骤信息 +r($testcase->getStepByProductAndModuleTest($productIdList[3], $moduleIdList[0])) && p() && e('testcaseID:9 stepID: 9. testcaseID:10 stepID: 10. testcaseID:11 stepID: 11. testcaseID:12 stepID: 12.'); // 获取产品 3 模块 0 的步骤信息 +r($testcase->getStepByProductAndModuleTest($productIdList[3], $moduleIdList[1])) && p() && e('0'); // 获取产品 3 模块 1821 的步骤信息 +r($testcase->getStepByProductAndModuleTest($productIdList[3], $moduleIdList[2])) && p() && e('0'); // 获取产品 3 模块 1825 的步骤信息 +r($testcase->getStepByProductAndModuleTest($productIdList[3], $moduleIdList[3])) && p() && e('testcaseID:10 stepID: 10.'); // 获取产品 3 模块 1829 的步骤信息 diff --git a/module/testcase/test/testcase.class.php b/module/testcase/test/testcase.class.php index 3eb5cb5aee..fefb103d60 100644 --- a/module/testcase/test/testcase.class.php +++ b/module/testcase/test/testcase.class.php @@ -1392,4 +1392,24 @@ class testcaseTest if(dao::isError()) return dao::getError(); return $return; } + + /** + * 测试通过产品和模块获取步骤信息。 + * Test get step by product and module. + * + * @param int $productID + * @param int $moduleID + * @access public + * @return array|string + */ + public function getStepByProductAndModuleTest(int $productID, int $moduleID): array|string + { + $array = $this->objectModel->getStepByProductAndModule($productID, $moduleID); + + if(dao::isError()) return dao::getError(); + + $return = ''; + foreach($array as $key => $step) $return .= "testcaseID:{$step->testcaseID} stepID: {$step->stepID}. "; + return trim($return); + } }