Merge branch 'sprint/autoTest_liumengyi_testcase' into 'master'
* Add auto test of testcase and fix bug. See merge request easycorp/zentaopms!2833
This commit is contained in:
@@ -1247,9 +1247,9 @@ class testcaseModel extends model
|
||||
else
|
||||
{
|
||||
/* Compare every step. */
|
||||
foreach($oldStep as $id => $oldStep)
|
||||
foreach($oldStep as $id => $step)
|
||||
{
|
||||
if(trim($oldStep->desc) != trim($steps[$id]->desc) or trim($oldStep->expect) != $steps[$id]->expect)
|
||||
if(trim($step->desc) != trim($steps[$id]->desc) or trim($step->expect) != $steps[$id]->expect)
|
||||
{
|
||||
$stepChanged = true;
|
||||
break;
|
||||
@@ -1388,10 +1388,14 @@ class testcaseModel extends model
|
||||
if($module != 'ditto') $prevModule = $module;
|
||||
if($module == 'ditto') $data->module[$i] = $prevModule;
|
||||
}
|
||||
foreach($data->branch as $i => $branch)
|
||||
|
||||
if(isset($data->branch))
|
||||
{
|
||||
if($branch != 'ditto') $prevBranch = $branch;
|
||||
if($branch == 'ditto') $data->branch[$i] = $prevBranch;
|
||||
foreach($data->branch as $i => $branch)
|
||||
{
|
||||
if($branch != 'ditto') $prevBranch = $branch;
|
||||
if($branch == 'ditto') $data->branch[$i] = $prevBranch;
|
||||
}
|
||||
}
|
||||
|
||||
$libCases = $this->dao->select('*')->from(TABLE_CASE)->where('deleted')->eq(0)->andWhere('id')->in($data->caseIdList)->fetchAll('id');
|
||||
@@ -1889,7 +1893,7 @@ class testcaseModel extends model
|
||||
|
||||
if($methodName == 'review')
|
||||
{
|
||||
$status = zget($case, 'status', $status);
|
||||
$status = zget($case, 'status', '');
|
||||
|
||||
if($this->post->result == 'pass') return 'normal';
|
||||
|
||||
|
||||
+245
-50
@@ -51,15 +51,6 @@ class testcaseTest
|
||||
return $objects;
|
||||
}
|
||||
|
||||
public function getProjectCasesTest($projectID, $orderBy = 'id_desc', $pager = null, $browseType = '')
|
||||
{
|
||||
$objects = $this->objectModel->getProjectCases($projectID, $orderBy = 'id_desc', $pager = null, $browseType = '');
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
return $objects;
|
||||
}
|
||||
|
||||
/**
|
||||
* Test get execution cases.
|
||||
*
|
||||
@@ -134,9 +125,19 @@ class testcaseTest
|
||||
return $objects;
|
||||
}
|
||||
|
||||
public function getTestCasesTest($productID, $branch, $browseType, $queryID, $moduleID, $sort, $pager, $auto = 'no')
|
||||
/**
|
||||
* Test get test cases.
|
||||
*
|
||||
* @param int $productID
|
||||
* @param string $browseType
|
||||
* @param int $queryID
|
||||
* @param string $auto
|
||||
* @access public
|
||||
* @return array
|
||||
*/
|
||||
public function getTestCasesTest($productID, $browseType, $queryID, $auto = 'no')
|
||||
{
|
||||
$objects = $this->objectModel->getTestCases($productID, $branch, $browseType, $queryID, $moduleID, $sort, $pager, $auto = 'no');
|
||||
$objects = $this->objectModel->getTestCases($productID, 0, $browseType, $queryID, $moduleID, 'id_desc', null, $auto);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
@@ -182,6 +183,20 @@ class testcaseTest
|
||||
return $objects;
|
||||
}
|
||||
|
||||
/**
|
||||
* Test get cases by type.
|
||||
*
|
||||
* @param int $productID
|
||||
* @param int $branch
|
||||
* @param string $type
|
||||
* @param string $status
|
||||
* @param int $moduleID
|
||||
* @param string $orderBy
|
||||
* @param object $pager
|
||||
* @param string $auto
|
||||
* @access public
|
||||
* @return int
|
||||
*/
|
||||
public function getByStatusTest($productID = 0, $branch = 0, $type = 'all', $status = 'all', $moduleID = 0, $orderBy = 'id_desc', $pager = null, $auto = 'no')
|
||||
{
|
||||
$objects = $this->objectModel->getByStatus($productID, $branch, $type, $status, $moduleID, $orderBy, $pager, $auto);
|
||||
@@ -191,6 +206,13 @@ class testcaseTest
|
||||
return count($objects);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test get stories' cases.
|
||||
*
|
||||
* @param int $storyID
|
||||
* @access public
|
||||
* @return array
|
||||
*/
|
||||
public function getStoryCasesTest($storyID)
|
||||
{
|
||||
$objects = $this->objectModel->getStoryCases($storyID);
|
||||
@@ -216,19 +238,64 @@ class testcaseTest
|
||||
return $counts;
|
||||
}
|
||||
|
||||
public function updateTest($caseID)
|
||||
/**
|
||||
* Test update a case.
|
||||
*
|
||||
* @param array $param
|
||||
* @access public
|
||||
* @return int
|
||||
*/
|
||||
public function updateTest($param = array())
|
||||
{
|
||||
$objects = $this->objectModel->update($caseID);
|
||||
$caseId = 1;
|
||||
$case = $this->objectModel->getById($caseId);
|
||||
|
||||
$_POST['title'] = $case->title;
|
||||
$_POST['color'] = $case->color;
|
||||
$_POST['precondition'] = $case->precondition;
|
||||
$_POST['steps'] = array('用例步骤描述1');
|
||||
$_POST['stepType'] = array('step');
|
||||
$_POST['expects'] = array('这是用例预期结果1');
|
||||
$_POST['comment'] = '';
|
||||
$_POST['labels'] = '';
|
||||
$_POST['lastEditedDate'] = $case->lastEditedDate;
|
||||
$_POST['product'] = $case->product;
|
||||
$_POST['module'] = $case->module;
|
||||
$_POST['story'] = $case->story;
|
||||
$_POST['type'] = $case->type;
|
||||
$_POST['stage'] = $case->stage;
|
||||
$_POST['pri'] = $case->pri;
|
||||
$_POST['status'] = $case->status;
|
||||
$_POST['keywords'] = $case->keywords;
|
||||
|
||||
foreach($param as $field => $value) $_POST[$field] = $value;
|
||||
|
||||
$change = $this->objectModel->update('1');
|
||||
if($change == array()) $change = '没有数据更新';
|
||||
|
||||
unset($_POST);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
return $objects;
|
||||
return $change;
|
||||
}
|
||||
|
||||
public function reviewTest($caseID)
|
||||
/**
|
||||
* Test review case.
|
||||
*
|
||||
* @param int $caseID
|
||||
* @param object $case
|
||||
* @access public
|
||||
* @return array
|
||||
*/
|
||||
public function reviewTest($caseID, $case)
|
||||
{
|
||||
foreach($case as $field => $value) $_POST[$field] = $value;
|
||||
|
||||
$objects = $this->objectModel->review($caseID);
|
||||
|
||||
unset($_POST);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
return $objects;
|
||||
@@ -251,15 +318,13 @@ class testcaseTest
|
||||
return $objects;
|
||||
}
|
||||
|
||||
public function getCases2LinkTest($caseID, $browseType = 'bySearch', $queryID = 0)
|
||||
{
|
||||
$objects = $this->objectModel->getCases2Link($caseID, $browseType = 'bySearch', $queryID = 0);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
return $objects;
|
||||
}
|
||||
|
||||
/**
|
||||
* Test batch update cases.
|
||||
*
|
||||
* @param array $param
|
||||
* @access public
|
||||
* @return array
|
||||
*/
|
||||
public function batchUpdateTest($param = array())
|
||||
{
|
||||
$batchUpdateField['caseIDList'] = array('1' => 1, '2' => 2, '3' => 3, '4' => 4);
|
||||
@@ -343,22 +408,69 @@ class testcaseTest
|
||||
return $objects;
|
||||
}
|
||||
|
||||
public function joinStepTest($steps)
|
||||
/**
|
||||
* Test join steps to a string, thus can diff them.
|
||||
*
|
||||
* @param array $stepIDList
|
||||
* @access public
|
||||
* @return string
|
||||
*/
|
||||
public function joinStepTest($stepIDList)
|
||||
{
|
||||
$objects = $this->objectModel->joinStep($steps);
|
||||
global $tester;
|
||||
$steps = $tester->dao->select('*')->from(TABLE_CASESTEP)->where('id')->in($stepIDList)->fetchAll();
|
||||
|
||||
$string = $this->objectModel->joinStep($steps);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
return $objects;
|
||||
$string = str_replace("\n", ' ', $string);
|
||||
return $string;
|
||||
}
|
||||
|
||||
public function createFromImportTest($productID, $branch = 0)
|
||||
/**
|
||||
* Test create from import.
|
||||
*
|
||||
* @param int $productID
|
||||
* @param array $param
|
||||
* @access public
|
||||
* @return string
|
||||
*/
|
||||
public function createFromImportTest($productID, $param = array())
|
||||
{
|
||||
$objects = $this->objectModel->createFromImport($productID, $branch = 0);
|
||||
global $tester;
|
||||
|
||||
$_POST['product'] = array('1' => '1', '2' => '1');
|
||||
$_POST['keywords'] = array('1' => '这是关键词1', '2' => '这是关键词2');
|
||||
$_POST['title'] = array('1' => '导入测试用例1', '2' => '导入测试用例2');
|
||||
$_POST['module'] = array('1' => '0', '2' => '0');
|
||||
$_POST['story'] = array('1' => '2', '2' => '2');
|
||||
$_POST['pri'] = array('1' => '1', '2' => '2');
|
||||
$_POST['type'] = array('1' => 'performance', '2' => 'feature');
|
||||
$_POST['stage'] = array('1' => array('0' => 'feature'), '2' => array('0' => 'unittest'));
|
||||
$_POST['precondition'] = array('1' => '这是前置条件1', '2' => '这是前置条件2');
|
||||
$_POST['stepType'] = array('1' => array('1' => 'step'), '2' => array('1' => 'step'));
|
||||
$_POST['desc'] = array('1' => array('1' => '用例步骤描述1'), '2' => array('1' => '用例步骤描述2'));
|
||||
$_POST['expect'] = array('1' => array('1' => '这是用例预期结果1'), '2' => array('1' => '这是用例预期结果2'));
|
||||
$_POST['isEndPage'] = '1';
|
||||
$_POST['pagerID'] = '1';
|
||||
|
||||
foreach($param as $field => $value) $_POST[$field] = $value;
|
||||
|
||||
$fileName = __DIR__ . DS . 'a.txt';
|
||||
fopen($fileName, 'a');
|
||||
$tester->session->fileImport = $fileName;
|
||||
|
||||
$this->objectModel->createFromImport($productID, 0);
|
||||
|
||||
|
||||
unset($_POST);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
return $objects;
|
||||
$objects = $tester->dao->select('*')->from(TABLE_CASE)->where('product')->eq(1)->andWhere('lib')->eq(0)->markLeft()->andWhere('id')->gt(560)->orWhere('id')->in('1,2')->markRight()->fetchAll('title');
|
||||
$titles = implode(',', array_keys($objects));
|
||||
return $titles;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -377,21 +489,27 @@ class testcaseTest
|
||||
return $object;
|
||||
}
|
||||
|
||||
public function importFromLibTest($productID)
|
||||
/**
|
||||
* Test import case from Lib.
|
||||
*
|
||||
* @param int $productID
|
||||
* @param array $caseIdList
|
||||
* @access public
|
||||
* @return array
|
||||
*/
|
||||
public function importFromLibTest($productID, $caseIdList = array())
|
||||
{
|
||||
$objects = $this->objectModel->importFromLib($productID);
|
||||
$_POST['module'] = array('410' => 0, '409' => 'ditto', '408' => 'ditto', '407' => 'ditto', '406' => 'ditto', '405' => 'ditto', '404' => 'ditto', '403' => 'ditto', '402' => 'ditto', '401' => 'ditto');
|
||||
$_POST['caseIdList'] = $caseIdList;
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
$this->objectModel->importFromLib($productID);
|
||||
|
||||
return $objects;
|
||||
}
|
||||
|
||||
public function buildSearchFormTest($productID, $products, $queryID, $actionURL, $projectID = 0)
|
||||
{
|
||||
$objects = $this->objectModel->buildSearchForm($productID, $products, $queryID, $actionURL, $projectID = 0);
|
||||
unset($_POST);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
global $tester;
|
||||
$objects = $tester->dao->select('*')->from(TABLE_CASE)->where('fromCaseID')->in($caseIdList)->orderBy('id_asc')->fetchAll();
|
||||
return $objects;
|
||||
}
|
||||
|
||||
@@ -427,29 +545,106 @@ class testcaseTest
|
||||
return $object ? 1 : 2;
|
||||
}
|
||||
|
||||
public function syncCase2ProjectTest($case, $caseID)
|
||||
/**
|
||||
* Test sync case to project.
|
||||
*
|
||||
* @param int $caseID
|
||||
* @access public
|
||||
* @return int
|
||||
*/
|
||||
public function syncCase2ProjectTest($caseID)
|
||||
{
|
||||
$objects = $this->objectModel->syncCase2Project($case, $caseID);
|
||||
global $tester;
|
||||
$tester->dao->delete()->from(TABLE_PROJECTCASE)->where('`case`')->eq($caseID)->exec();
|
||||
$case = $this->objectModel->getByID($caseID);
|
||||
$this->objectModel->syncCase2Project($case, $caseID);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
$objects = $tester->dao->select('*')->from(TABLE_PROJECTCASE)->where('`case`')->eq($caseID)->fetchAll();
|
||||
return count($objects);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test deal with the relationship between the case and project when edit the case.
|
||||
*
|
||||
* @param int $caseID
|
||||
* @param string $objectType
|
||||
* @param int $objectID
|
||||
* @access public
|
||||
* @return array
|
||||
*/
|
||||
public function updateCase2ProjectTest($caseID, $objectType, $objectID)
|
||||
{
|
||||
$oldCase = $this->objectModel->getByID($caseID);
|
||||
|
||||
$case = new stdclass();
|
||||
$case->title = $oldCase->title;
|
||||
$case->color = $oldCase->color;
|
||||
$case->precondition = $oldCase->precondition;
|
||||
$case->lastEditedDate = $oldCase->lastEditedDate;
|
||||
$case->product = $objectType == 'product' ? $objectID : $oldCase->product;
|
||||
$case->module = $oldCase->module;
|
||||
$case->story = $objectType == 'story' ? $objectID : $oldCase->story;
|
||||
$case->type = $oldCase->type;
|
||||
$case->stage = $oldCase->stage;
|
||||
$case->pri = $oldCase->pri;
|
||||
$case->status = $oldCase->status;
|
||||
$case->keywords = $oldCase->keywords;
|
||||
$case->version = $oldCase->version + 1;
|
||||
$case->linkCase = $oldCase->linkCase;
|
||||
$case->lastEditedBy = $oldCase->lastEditedBy;
|
||||
$case->branch = $oldCase->branch;
|
||||
|
||||
$this->objectModel->updateCase2Project($oldCase, $case, $caseID);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
|
||||
global $tester;
|
||||
$objects = $tester->dao->select('*')->from(TABLE_PROJECTCASE)->where('`case`')->eq($caseID)->fetchAll();
|
||||
return $objects;
|
||||
}
|
||||
|
||||
public function updateCase2ProjectTest($oldCase, $case, $caseID)
|
||||
/**
|
||||
* Test get status for different method.
|
||||
*
|
||||
* @param string $methodName
|
||||
* @param object $case
|
||||
* @param array $param
|
||||
* @access public
|
||||
* @return array
|
||||
*/
|
||||
public function getStatusTest($methodName, $case = null, $param = array())
|
||||
{
|
||||
$objects = $this->objectModel->updateCase2Project($oldCase, $case, $caseID);
|
||||
if($methodName == 'update')
|
||||
{
|
||||
$case = $this->objectModel->getByID(1);
|
||||
$_POST['title'] = $case->title;
|
||||
$_POST['color'] = $case->color;
|
||||
$_POST['precondition'] = $case->precondition;
|
||||
$_POST['steps'] = array('用例步骤描述1');
|
||||
$_POST['stepType'] = array('step');
|
||||
$_POST['expects'] = array('这是用例预期结果1');
|
||||
$_POST['comment'] = '';
|
||||
$_POST['labels'] = '';
|
||||
$_POST['lastEditedDate'] = $case->lastEditedDate;
|
||||
$_POST['product'] = $case->product;
|
||||
$_POST['module'] = $case->module;
|
||||
$_POST['story'] = $case->story;
|
||||
$_POST['type'] = $case->type;
|
||||
$_POST['stage'] = $case->stage;
|
||||
$_POST['pri'] = $case->pri;
|
||||
$_POST['status'] = $case->status;
|
||||
$_POST['keywords'] = $case->keywords;
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
foreach($param as $field => $value) $_POST[$field] = $value;
|
||||
}
|
||||
|
||||
return $objects;
|
||||
}
|
||||
$objects = $this->objectModel->getStatus($methodName, $case);
|
||||
|
||||
public function getStatusTest($methodName, $case = null)
|
||||
{
|
||||
$objects = $this->objectModel->getStatus($methodName, $case = null);
|
||||
unset($_POST);
|
||||
|
||||
if(dao::isError()) return dao::getError();
|
||||
if(dao::isError()) return dao::getError()[0];
|
||||
|
||||
return $objects;
|
||||
}
|
||||
|
||||
@@ -17,42 +17,42 @@ $objectId = array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,
|
||||
|
||||
$action = new actionTest();
|
||||
|
||||
r($action->getListTest($objectType[0], $objectId[0])) && p('id,actor,extra') && e("1,admin,1"); // 测试获取objectType product objectId 1的动态信息
|
||||
r($action->getListTest($objectType[1], $objectId[1])) && p('id,actor,extra') && e("2,dev17,1"); // 测试获取objectType story objectId 2的动态信息
|
||||
r($action->getListTest($objectType[2], $objectId[2])) && p('id,actor,extra') && e("3,test18,1"); // 测试获取objectType productplan objectId 3的动态信息
|
||||
r($action->getListTest($objectType[3], $objectId[3])) && p('id,actor,extra') && e("4,admin,1"); // 测试获取objectType release objectId 4的动态信息
|
||||
r($action->getListTest($objectType[4], $objectId[4])) && p('id,actor,extra') && e("5,dev17,11"); // 测试获取objectType project objectId 5的动态信息
|
||||
r($action->getListTest($objectType[5], $objectId[5])) && p('id,actor,extra') && e("6,test18,1"); // 测试获取objectType task objectId 6的动态信息
|
||||
r($action->getListTest($objectType[6], $objectId[6])) && p('id,actor,extra') && e("7,admin,1"); // 测试获取objectType build objectId 7的动态信息
|
||||
r($action->getListTest($objectType[7], $objectId[7])) && p('id,actor,extra') && e("8,dev17,1"); // 测试获取objectType bug objectId 8的动态信息
|
||||
r($action->getListTest($objectType[8], $objectId[8])) && p('id,actor,extra') && e("9,test18,2"); // 测试获取objectType testcase objectId 9的动态信息
|
||||
r($action->getListTest($objectType[9], $objectId[9])) && p('id,actor,extra') && e("10,admin,1"); // 测试获取objectType case objectId 10的动态信息
|
||||
r($action->getListTest($objectType[10], $objectId[10])) && p('id,actor,extra') && e("11,dev17,1"); // 测试获取objectType testtask objectId 11的动态信息
|
||||
r($action->getListTest($objectType[11], $objectId[11])) && p('id,actor,extra') && e("12,test18,1"); // 测试获取objectType user objectId 12的动态信息
|
||||
r($action->getListTest($objectType[12], $objectId[12])) && p('id,actor,extra') && e("13,admin,1"); // 测试获取objectType doc objectId 13的动态信息
|
||||
r($action->getListTest($objectType[13], $objectId[13])) && p('id,actor,extra') && e("14,dev17,1"); // 测试获取objectType doclib objectId 14的动态信息
|
||||
r($action->getListTest($objectType[14], $objectId[14])) && p('id,actor,extra') && e("15,test18,1"); // 测试获取objectType todo objectId 15的动态信息
|
||||
r($action->getListTest($objectType[15], $objectId[15])) && p('id,actor,extra') && e("16,admin,1"); // 测试获取objectType branch objectId 16的动态信息
|
||||
r($action->getListTest($objectType[16], $objectId[16])) && p('id,actor,extra') && e("17,dev17,1"); // 测试获取objectType module objectId 17的动态信息
|
||||
r($action->getListTest($objectType[0], $objectId[0])) && p('id,actor,extra') && e("1,admin,1"); // 测试获取objectType product objectId 1的动态信息
|
||||
r($action->getListTest($objectType[1], $objectId[1])) && p('id,actor,extra') && e("2,dev17,1"); // 测试获取objectType story objectId 2的动态信息
|
||||
r($action->getListTest($objectType[2], $objectId[2])) && p('id,actor,extra') && e("3,test18,1"); // 测试获取objectType productplan objectId 3的动态信息
|
||||
r($action->getListTest($objectType[3], $objectId[3])) && p('id,actor,extra') && e("4,admin,1"); // 测试获取objectType release objectId 4的动态信息
|
||||
r($action->getListTest($objectType[4], $objectId[4])) && p('id,actor,extra') && e("5,dev17,11"); // 测试获取objectType project objectId 5的动态信息
|
||||
r($action->getListTest($objectType[5], $objectId[5])) && p('id,actor,extra') && e("6,test18,1"); // 测试获取objectType task objectId 6的动态信息
|
||||
r($action->getListTest($objectType[6], $objectId[6])) && p('id,actor,extra') && e("7,admin,1"); // 测试获取objectType build objectId 7的动态信息
|
||||
r($action->getListTest($objectType[7], $objectId[7])) && p('id,actor,extra') && e("8,dev17,1"); // 测试获取objectType bug objectId 8的动态信息
|
||||
r($action->getListTest($objectType[8], $objectId[8])) && p('id,actor,extra') && e("9,test18,2"); // 测试获取objectType testcase objectId 9的动态信息
|
||||
r($action->getListTest($objectType[9], $objectId[9])) && p('id,actor,extra') && e("10,admin,1"); // 测试获取objectType case objectId 10的动态信息
|
||||
r($action->getListTest($objectType[10], $objectId[10])) && p('id,actor,extra') && e("11,dev17,1"); // 测试获取objectType testtask objectId 11的动态信息
|
||||
r($action->getListTest($objectType[11], $objectId[11])) && p('id,actor,extra') && e("12,test18,1"); // 测试获取objectType user objectId 12的动态信息
|
||||
r($action->getListTest($objectType[12], $objectId[12])) && p('id,actor,extra') && e("13,admin,1"); // 测试获取objectType doc objectId 13的动态信息
|
||||
r($action->getListTest($objectType[13], $objectId[13])) && p('id,actor,extra') && e("14,dev17,1"); // 测试获取objectType doclib objectId 14的动态信息
|
||||
r($action->getListTest($objectType[14], $objectId[14])) && p('id,actor,extra') && e("15,test18,1"); // 测试获取objectType todo objectId 15的动态信息
|
||||
r($action->getListTest($objectType[15], $objectId[15])) && p('id,actor,extra') && e("16,admin,1"); // 测试获取objectType branch objectId 16的动态信息
|
||||
r($action->getListTest($objectType[16], $objectId[16])) && p('id,actor,extra') && e("17,dev17,1"); // 测试获取objectType module objectId 17的动态信息
|
||||
r($action->getListTest($objectType[17], $objectId[17])) && p('id,actor,extra') && e("18,test18,<a href='model/action/execution-task-1.' >#1 项目集1</a>"); // 测试获取objectType testsuite objectId 18的动态信息
|
||||
r($action->getListTest($objectType[18], $objectId[18])) && p('id,actor,extra') && e("19,admin,1"); // 测试获取objectType caselib objectId 19的动态信息
|
||||
r($action->getListTest($objectType[19], $objectId[19])) && p('id,actor,extra') && e("20,dev17,1"); // 测试获取objectType testreport objectId 20的动态信息
|
||||
r($action->getListTest($objectType[20], $objectId[20])) && p('id,actor,extra') && e("21,test18,1"); // 测试获取objectType entry objectId 21的动态信息
|
||||
r($action->getListTest($objectType[18], $objectId[18])) && p('id,actor,extra') && e("19,admin,1"); // 测试获取objectType caselib objectId 19的动态信息
|
||||
r($action->getListTest($objectType[19], $objectId[19])) && p('id,actor,extra') && e("20,dev17,1"); // 测试获取objectType testreport objectId 20的动态信息
|
||||
r($action->getListTest($objectType[20], $objectId[20])) && p('id,actor,extra') && e("21,test18,1"); // 测试获取objectType entry objectId 21的动态信息
|
||||
r($action->getListTest($objectType[21], $objectId[21])) && p('id,actor,extra') && e("22,admin,<a href='model/action/bug-view-1.' >1</a>"); // 测试获取objectType webhook objectId 22的动态信息
|
||||
r($action->getListTest($objectType[22], $objectId[22])) && p('id,actor,extra') && e("23,dev17,1"); // 测试获取objectType review objectId 23的动态信息
|
||||
r($action->getListTest($objectType[0], $objectId[23])) && p('id,actor,extra') && e("24,test18,1"); // 测试获取objectType product objectId 24的动态信息
|
||||
r($action->getListTest($objectType[1], $objectId[24])) && p('id,actor,extra') && e("25,admin,1"); // 测试获取objectType story objectId 25的动态信息
|
||||
r($action->getListTest($objectType[2], $objectId[25])) && p('id,actor,extra') && e("26,dev17,1"); // 测试获取objectType productplan objectId 26的动态信息
|
||||
r($action->getListTest($objectType[3], $objectId[26])) && p('id,actor,extra') && e("27,test18,1"); // 测试获取objectType release objectId 27的动态信息
|
||||
r($action->getListTest($objectType[4], $objectId[27])) && p('id,actor,extra') && e("28,admin,33"); // 测试获取objectType project objectId 28的动态信息
|
||||
r($action->getListTest($objectType[5], $objectId[28])) && p('id,actor,extra') && e("29,dev17,1"); // 测试获取objectType task objectId 29的动态信息
|
||||
r($action->getListTest($objectType[6], $objectId[29])) && p('id,actor,extra') && e("30,test18,1"); // 测试获取objectType build objectId 30的动态信息
|
||||
r($action->getListTest($objectType[7], $objectId[30])) && p('id,actor,extra') && e("31,admin,1"); // 测试获取objectType bug objectId 31的动态信息
|
||||
r($action->getListTest($objectType[8], $objectId[31])) && p('id,actor,extra') && e("32,项目经理17,1"); // 测试获取objectType testcase objectId 32的动态信息
|
||||
r($action->getListTest($objectType[9], $objectId[32])) && p('id,actor,extra') && e("33,test18,1"); // 测试获取objectType case objectId 33的动态信息
|
||||
r($action->getListTest($objectType[10], $objectId[33])) && p('id,actor,extra') && e("34,admin,1"); // 测试获取objectType testtask objectId 34的动态信息
|
||||
r($action->getListTest($objectType[11], $objectId[34])) && p('id,actor,extra') && e("35,dev17,1"); // 测试获取objectType user objectId 35的动态信息
|
||||
r($action->getListTest($objectType[12], $objectId[35])) && p('id,actor,extra') && e("36,test18,1"); // 测试获取objectType doc objectId 36的动态信息
|
||||
r($action->getListTest($objectType[13], $objectId[36])) && p('id,actor,extra') && e("37,admin,1"); // 测试获取objectType doclib objectId 37的动态信息
|
||||
r($action->getListTest($objectType[14], $objectId[37])) && p('id,actor,extra') && e("38,dev17,1"); // 测试获取objectType todo objectId 38的动态信息
|
||||
r($action->getListTest($objectType[22], $objectId[22])) && p('id,actor,extra') && e("23,dev17,1"); // 测试获取objectType review objectId 23的动态信息
|
||||
r($action->getListTest($objectType[0], $objectId[23])) && p('id,actor,extra') && e("24,test18,1"); // 测试获取objectType product objectId 24的动态信息
|
||||
r($action->getListTest($objectType[1], $objectId[24])) && p('id,actor,extra') && e("25,admin,1"); // 测试获取objectType story objectId 25的动态信息
|
||||
r($action->getListTest($objectType[2], $objectId[25])) && p('id,actor,extra') && e("26,dev17,1"); // 测试获取objectType productplan objectId 26的动态信息
|
||||
r($action->getListTest($objectType[3], $objectId[26])) && p('id,actor,extra') && e("27,test18,1"); // 测试获取objectType release objectId 27的动态信息
|
||||
r($action->getListTest($objectType[4], $objectId[27])) && p('id,actor,extra') && e("28,admin,33"); // 测试获取objectType project objectId 28的动态信息
|
||||
r($action->getListTest($objectType[5], $objectId[28])) && p('id,actor,extra') && e("29,dev17,1"); // 测试获取objectType task objectId 29的动态信息
|
||||
r($action->getListTest($objectType[6], $objectId[29])) && p('id,actor,extra') && e("30,test18,1"); // 测试获取objectType build objectId 30的动态信息
|
||||
r($action->getListTest($objectType[7], $objectId[30])) && p('id,actor,extra') && e("31,admin,1"); // 测试获取objectType bug objectId 31的动态信息
|
||||
r($action->getListTest($objectType[8], $objectId[31])) && p('id,actor,extra') && e("32,项目经理17,1"); // 测试获取objectType testcase objectId 32的动态信息
|
||||
r($action->getListTest($objectType[9], $objectId[32])) && p('id,actor,extra') && e("33,test18,1"); // 测试获取objectType case objectId 33的动态信息
|
||||
r($action->getListTest($objectType[10], $objectId[33])) && p('id,actor,extra') && e("34,admin,1"); // 测试获取objectType testtask objectId 34的动态信息
|
||||
r($action->getListTest($objectType[11], $objectId[34])) && p('id,actor,extra') && e("35,dev17,1"); // 测试获取objectType user objectId 35的动态信息
|
||||
r($action->getListTest($objectType[12], $objectId[35])) && p('id,actor,extra') && e("36,test18,1"); // 测试获取objectType doc objectId 36的动态信息
|
||||
r($action->getListTest($objectType[13], $objectId[36])) && p('id,actor,extra') && e("37,admin,1"); // 测试获取objectType doclib objectId 37的动态信息
|
||||
r($action->getListTest($objectType[14], $objectId[37])) && p('id,actor,extra') && e("38,dev17,1"); // 测试获取objectType todo objectId 38的动态信息
|
||||
r($action->getListTest($objectType[15], $objectId[38])) && p('id,actor,extra') && e("39,test18,<a href='model/action/build-view-1-branch.' >项目版本版本1</a>"); // 测试获取objectType branch objectId 39的动态信息
|
||||
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
|
||||
include dirname(dirname(dirname(__FILE__))) . '/class/testcase.class.php';
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=测试 testcaseModel->createFromImport();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
*/
|
||||
|
||||
$productID = 1;
|
||||
|
||||
$param1 = array('id' => array('1' => 1, '2' => 2), 'title' => array('1' => '导入覆盖的用例1', '2' => '导入覆盖的用例2'), 'insert' => '0');
|
||||
$param2 = array('id' => array('1' => 1, '2' => 2), 'title' => array('1' => '导入插入的用例1', '2' => '导入插入的用例2'), 'insert' => '1');
|
||||
|
||||
$testcase = new testcaseTest();
|
||||
|
||||
r($testcase->createFromImportTest($productID)) && p() && e('这个是测试用例1,这个是测试用例2,导入测试用例1,导入测试用例2'); // 测试直接导入数据
|
||||
r($testcase->createFromImportTest($productID, $param1)) && p() && e('导入覆盖的用例1,导入覆盖的用例2,导入测试用例1,导入测试用例2'); // 测试导入数据覆盖原有数据
|
||||
r($testcase->createFromImportTest($productID, $param2)) && p() && e('导入覆盖的用例1,导入覆盖的用例2,导入测试用例1,导入测试用例2,导入插入的用例1,导入插入的用例2'); // 测试导入数据不覆盖原有数据
|
||||
system("./ztest init");
|
||||
Executable
+32
@@ -0,0 +1,32 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
|
||||
include dirname(dirname(dirname(__FILE__))) . '/class/testcase.class.php';
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=测试 testcaseModel->getStatus();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
*/
|
||||
|
||||
$typeList = array('create', 'review', 'update');
|
||||
|
||||
$case1 = new stdclass();
|
||||
$case1->status = 'pass';
|
||||
|
||||
$case2 = new stdclass();
|
||||
$case2->status = 'clarify';
|
||||
|
||||
$case = null;
|
||||
$param1 = array('lastEditedDate' => '2022-03-04 00:00:00');
|
||||
|
||||
$testcase = new testcaseTest();
|
||||
|
||||
r($testcase->getStatusTest($typeList[0])) && p() && e('normal'); // 测试获取create的状态
|
||||
r($testcase->getStatusTest($typeList[1], $case1)) && p() && e('pass'); // 测试获取review pass 的状态
|
||||
r($testcase->getStatusTest($typeList[1], $case2)) && p() && e('clarify'); // 测试获取review clarify 的状态
|
||||
r($testcase->getStatusTest($typeList[2], $case)) && p('1') && e('wait'); // 测试获取update的状态
|
||||
r($testcase->getStatusTest($typeList[2], $case, $param1)) && p() && e('该记录可能已经被改动。请刷新页面重新编辑!'); // 测试获取update 别人变更 的状态
|
||||
Executable
+45
@@ -0,0 +1,45 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
|
||||
include dirname(dirname(dirname(__FILE__))) . '/class/testcase.class.php';
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=测试 testcaseModel->getTestCases();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
*/
|
||||
|
||||
$productID = array('1', '2', '3', '4', '5');
|
||||
$browseType = array('all', 'wait', 'bymodule', 'needconfirm', 'bysuite');
|
||||
$suiteID = array('1', '3', '5', '7', '9');
|
||||
|
||||
$testcase = new testcaseTest();
|
||||
|
||||
r($testcase->getTestCasesTest($productID[0], $browseType[0], $suiteID[0])) && p('1:title;2:title;3:title;4:title') && e('这个是测试用例1;这个是测试用例2;这个是测试用例3;这个是测试用例4'); // 测试查询产品1 suiteID 1 browseType all 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[0], $browseType[1], $suiteID[0])) && p('1:title') && e('这个是测试用例1'); // 测试查询产品1 suiteID 1 browseType wait 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[0], $browseType[2], $suiteID[0])) && p('1:title;2:title;3:title;4:title') && e('这个是测试用例1;这个是测试用例2;这个是测试用例3;这个是测试用例4'); // 测试查询产品1 suiteID 1 browseType bymodule 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[0], $browseType[3], $suiteID[0])) && p('0:title;1:title;2:title;3:title') && e('这个是测试用例4;这个是测试用例3;这个是测试用例2;这个是测试用例1'); // 测试查询产品1 suiteID 1 browseType needconfirm 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[0], $browseType[4], $suiteID[0])) && p('1:title;2:title') && e('这个是测试用例1;这个是测试用例2'); // 测试查询产品1 suiteID 1 browseType bysuite 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[1], $browseType[0], $suiteID[1])) && p('5:title;6:title;7:title;8:title') && e('这个是测试用例5;这个是测试用例6;这个是测试用例7;这个是测试用例8'); // 测试查询产品2 suiteID 3 browseType all 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[1], $browseType[1], $suiteID[1])) && p('5:title') && e('这个是测试用例5'); // 测试查询产品2 suiteID 3 browseType wait 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[1], $browseType[2], $suiteID[1])) && p('5:title;6:title;7:title;8:title') && e('这个是测试用例5;这个是测试用例6;这个是测试用例7;这个是测试用例8'); // 测试查询产品2 suiteID 3 browseType bymodule 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[1], $browseType[3], $suiteID[1])) && p('0:title;1:title;2:title;3:title') && e('这个是测试用例8;这个是测试用例7;这个是测试用例6;这个是测试用例5'); // 测试查询产品2 suiteID 3 browseType needconfirm 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[1], $browseType[4], $suiteID[1])) && p('5:title;6:title') && e('这个是测试用例5;这个是测试用例6'); // 测试查询产品2 suiteID 3 browseType bysuite 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[2], $browseType[0], $suiteID[2])) && p('9:title;10:title;11:title;12:title') && e('这个是测试用例9;这个是测试用例10;这个是测试用例11;这个是测试用例12'); // 测试查询产品3 suiteID 5 browseType all 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[2], $browseType[1], $suiteID[2])) && p('9:title') && e('这个是测试用例9'); // 测试查询产品3 suiteID 5 browseType wait 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[2], $browseType[2], $suiteID[2])) && p('9:title;10:title;11:title;12:title') && e('这个是测试用例9;这个是测试用例10;这个是测试用例11;这个是测试用例12'); // 测试查询产品3 suiteID 5 browseType bymodule 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[2], $browseType[3], $suiteID[2])) && p('0:title;1:title;2:title;3:title') && e('这个是测试用例12;这个是测试用例11;这个是测试用例10;这个是测试用例9'); // 测试查询产品3 suiteID 5 browseType needconfirm 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[2], $browseType[4], $suiteID[2])) && p('9:title;10:title') && e('这个是测试用例9;这个是测试用例10'); // 测试查询产品3 suiteID 5 browseType bysuite 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[3], $browseType[0], $suiteID[3])) && p('13:title;14:title;15:title;16:title') && e('这个是测试用例13;这个是测试用例14;这个是测试用例15;这个是测试用例16'); // 测试查询产品4 suiteID 7 browseType all 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[3], $browseType[1], $suiteID[3])) && p('13:title') && e('这个是测试用例13'); // 测试查询产品4 suiteID 7 browseType wait 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[3], $browseType[2], $suiteID[3])) && p('13:title;14:title;15:title;16:title') && e('这个是测试用例13;这个是测试用例14;这个是测试用例15;这个是测试用例16'); // 测试查询产品4 suiteID 7 browseType bymodule 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[3], $browseType[3], $suiteID[3])) && p('0:title;1:title;2:title;3:title') && e('这个是测试用例16;这个是测试用例15;这个是测试用例14;这个是测试用例13'); // 测试查询产品4 suiteID 7 browseType needconfirm 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[3], $browseType[4], $suiteID[3])) && p('13:title;14:title') && e('这个是测试用例13;这个是测试用例14'); // 测试查询产品4 suiteID 7 browseType bysuite 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[4], $browseType[0], $suiteID[4])) && p('17:title;18:title;19:title;20:title') && e('这个是测试用例17;这个是测试用例18;这个是测试用例19;这个是测试用例20'); // 测试查询产品5 suiteID 9 browseType all 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[4], $browseType[1], $suiteID[4])) && p('17:title') && e('这个是测试用例17'); // 测试查询产品5 suiteID 9 browseType wait 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[4], $browseType[2], $suiteID[4])) && p('17:title;18:title;19:title;20:title') && e('这个是测试用例17;这个是测试用例18;这个是测试用例19;这个是测试用例20'); // 测试查询产品5 suiteID 9 browseType bymodule 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[4], $browseType[3], $suiteID[4])) && p('0:title;1:title;2:title;3:title') && e('这个是测试用例20;这个是测试用例19;这个是测试用例18;这个是测试用例17'); // 测试查询产品5 suiteID 9 browseType needconfirm 的测试用例
|
||||
r($testcase->getTestCasesTest($productID[4], $browseType[4], $suiteID[4])) && p('17:title;18:title') && e('这个是测试用例17;这个是测试用例18'); // 测试查询产品5 suiteID 9 browseType bysuite 的测试用例
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
|
||||
include dirname(dirname(dirname(__FILE__))) . '/class/testcase.class.php';
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=测试 testcaseModel->importFromLib();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
*/
|
||||
|
||||
$productID = 1;
|
||||
$caseIdList = array(array('401' => '401', '402' => '402'), array('403' => '403', '404' => '404'), array('405' => '405', '406' => '406'), array('407' => '407', '408' => '408'), array('409' => '409', '410' => '410'));
|
||||
|
||||
$testcase = new testcaseTest();
|
||||
|
||||
r($testcase->importFromLibTest($productID, $caseIdList[0])) && p('0:title;1:title') && e('用例库用例1;用例库用例2'); // 测试导入用例库用例 401 402
|
||||
r($testcase->importFromLibTest($productID, $caseIdList[1])) && p('0:title;1:title') && e('用例库用例3;用例库用例4'); // 测试导入用例库用例 403 404
|
||||
r($testcase->importFromLibTest($productID, $caseIdList[2])) && p('0:title;1:title') && e('用例库用例5;用例库用例6'); // 测试导入用例库用例 405 406
|
||||
r($testcase->importFromLibTest($productID, $caseIdList[3])) && p('0:title;1:title') && e('用例库用例7;用例库用例8'); // 测试导入用例库用例 407 408
|
||||
r($testcase->importFromLibTest($productID, $caseIdList[4])) && p('0:title;1:title') && e('用例库用例9;用例库用例10'); // 测试导入用例库用例 409 410
|
||||
system("./ztest init");
|
||||
Executable
+23
@@ -0,0 +1,23 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
|
||||
include dirname(dirname(dirname(__FILE__))) . '/class/testcase.class.php';
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=测试 testcaseModel->joinStep();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
*/
|
||||
|
||||
$stepIDList = array('1,2', '3,4', '5,6', '7,8', '9,10');
|
||||
|
||||
$testcase = new testcaseTest();
|
||||
|
||||
r($testcase->joinStepTest($stepIDList[0])) && p() && e('用例步骤描述1 EXPECT:这是用例预期结果1 用例步骤描述2 EXPECT:这是用例预期结果2'); // 测试获取步骤 1 2 的字符串
|
||||
r($testcase->joinStepTest($stepIDList[1])) && p() && e('用例步骤描述3 EXPECT:这是用例预期结果3 用例步骤描述4 EXPECT:这是用例预期结果4'); // 测试获取步骤 3 4 的字符串
|
||||
r($testcase->joinStepTest($stepIDList[2])) && p() && e('用例步骤描述5 EXPECT:这是用例预期结果5 用例步骤描述6 EXPECT:这是用例预期结果6'); // 测试获取步骤 5 6 的字符串
|
||||
r($testcase->joinStepTest($stepIDList[3])) && p() && e('用例步骤描述7 EXPECT:这是用例预期结果7 用例步骤描述8 EXPECT:这是用例预期结果8'); // 测试获取步骤 7 8 的字符串
|
||||
r($testcase->joinStepTest($stepIDList[4])) && p() && e('用例步骤描述9 EXPECT:这是用例预期结果9 用例步骤描述10 EXPECT:这是用例预期结果10'); // 测试获取步骤 9 10 的字符串
|
||||
Executable
+49
@@ -0,0 +1,49 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
|
||||
include dirname(dirname(dirname(__FILE__))) . '/class/testcase.class.php';
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=测试 testcaseModel->review();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
*/
|
||||
|
||||
$caseIDList = array(1, 5, 9, 13, 17);
|
||||
|
||||
$case1 = new stdclass();
|
||||
$case1->result = 'pass';
|
||||
$case1->status = 'normal';
|
||||
$case1->reviewedBy = array('test1');
|
||||
|
||||
$case2 = new stdclass();
|
||||
$case2->result = 'clarify';
|
||||
$case2->status = 'wait';
|
||||
$case2->reviewedBy = array('test2');
|
||||
|
||||
$case3 = new stdclass();
|
||||
$case3->result = 'pass';
|
||||
$case3->status = 'normal';
|
||||
$case3->reviewedBy = array('test3');
|
||||
|
||||
$case4 = new stdclass();
|
||||
$case4->result = 'clarify';
|
||||
$case4->status = 'wait';
|
||||
$case4->reviewedBy = array('test4');
|
||||
|
||||
$case5 = new stdclass();
|
||||
$case5->result = 'pass';
|
||||
$case5->status = 'normal';
|
||||
$case5->reviewedBy = array('test5');
|
||||
|
||||
$testcase = new testcaseTest();
|
||||
|
||||
r($testcase->reviewTest($caseIDList[0], $case1)) && p('0:field,old,new') && e('status,wait,normal'); // 测试评审用例 1
|
||||
r($testcase->reviewTest($caseIDList[1], $case2)) && p('0:field,old,new') && e('reviewedBy,admin,test2'); // 测试评审用例 2
|
||||
r($testcase->reviewTest($caseIDList[2], $case3)) && p('0:field,old,new') && e('status,wait,normal'); // 测试评审用例 3
|
||||
r($testcase->reviewTest($caseIDList[3], $case4)) && p('0:field,old,new') && e('reviewedBy,admin,test4'); // 测试评审用例 4
|
||||
r($testcase->reviewTest($caseIDList[4], $case5)) && p('0:field,old,new') && e('status,wait,normal'); // 测试评审用例 5
|
||||
system("./ztest init");
|
||||
Executable
+24
@@ -0,0 +1,24 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
|
||||
include dirname(dirname(dirname(__FILE__))) . '/class/testcase.class.php';
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=测试 testcaseModel->syncCase2Project();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
*/
|
||||
|
||||
$caseIDList = array(1, 5, 9, 13, 17, 2);
|
||||
|
||||
$testcase = new testcaseTest();
|
||||
|
||||
r($testcase->syncCase2ProjectTest($caseIDList[0])) && p() && e('2'); // 测试同步用例 1 到关联项目中
|
||||
r($testcase->syncCase2ProjectTest($caseIDList[1])) && p() && e('2'); // 测试同步用例 2 到关联项目中
|
||||
r($testcase->syncCase2ProjectTest($caseIDList[2])) && p() && e('2'); // 测试同步用例 3 到关联项目中
|
||||
r($testcase->syncCase2ProjectTest($caseIDList[3])) && p() && e('2'); // 测试同步用例 4 到关联项目中
|
||||
r($testcase->syncCase2ProjectTest($caseIDList[4])) && p() && e('2'); // 测试同步用例 5 到关联项目中
|
||||
system("./ztest init");
|
||||
Executable
+27
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
|
||||
include dirname(dirname(dirname(__FILE__))) . '/class/testcase.class.php';
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=测试 testcaseModel->update();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
*/
|
||||
|
||||
$changeTitle = array('title' => '修改后的名称');
|
||||
$changePrecondition = array('precondition' => '修改后的前置条件');
|
||||
$changeStatus = array('status' => 'normal');
|
||||
$changePri = array('pri' => '3');
|
||||
|
||||
$testcase = new testcaseTest();
|
||||
|
||||
r($testcase->updateTest($changeTitle)) && p('0:field,old,new') && e('title,这个是测试用例1,修改后的名称'); // 测试修改标题
|
||||
r($testcase->updateTest($changeTitle)) && p('0:field,old,new') && e('没有数据更新'); // 测试重复修改标题
|
||||
r($testcase->updateTest($changePrecondition)) && p('0:field,old,new') && e('precondition,这是前置条件1,修改后的前置条件'); // 测试修改前置条件
|
||||
r($testcase->updateTest($changeStatus)) && p('0:field,old,new') && e('status,wait,normal'); // 测试修改状态
|
||||
r($testcase->updateTest($changePri)) && p('0:field,old,new') && e('pri,1,3'); // 测试修改优先级
|
||||
system("./ztest init");
|
||||
Executable
+31
@@ -0,0 +1,31 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
|
||||
include dirname(dirname(dirname(__FILE__))) . '/class/testcase.class.php';
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=测试 testcaseModel->updateCase2Project();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
*/
|
||||
|
||||
$caseIDList = array('1', '3', '5', '7', '9');
|
||||
$objectTypeList = array('product', 'story');
|
||||
$objectIDList = array('2', '1', '6', '2');
|
||||
|
||||
$testcase = new testcaseTest();
|
||||
|
||||
r($testcase->updateCase2ProjectTest($caseIDList[0], $objectTypeList[0], $objectIDList[0])) && p('0:project,product,case') && e('101,2,1'); // 测试修改用例 1 产品
|
||||
r($testcase->updateCase2ProjectTest($caseIDList[0], $objectTypeList[1], $objectIDList[2])) && p('0:project,product,case;1:project,product,case;2:project,product,case') && e('101,2,1;12,1,1;102,1,1'); // 测试修改用例 1 需求
|
||||
r($testcase->updateCase2ProjectTest($caseIDList[1], $objectTypeList[0], $objectIDList[0])) && p('0:project,product,case') && e('101,2,3'); // 测试修改用例 3 产品
|
||||
r($testcase->updateCase2ProjectTest($caseIDList[1], $objectTypeList[1], $objectIDList[2])) && p('0:project,product,case;1:project,product,case;2:project,product,case') && e('101,2,3;12,1,3;102,1,3'); // 测试修改用例 3 需求
|
||||
r($testcase->updateCase2ProjectTest($caseIDList[2], $objectTypeList[0], $objectIDList[1])) && p('0:project,product,case') && e('102,1,5'); // 测试修改用例 5 产品
|
||||
r($testcase->updateCase2ProjectTest($caseIDList[2], $objectTypeList[1], $objectIDList[3])) && p('0:project,product,case;1:project,product,case;2:project,product,case') && e('102,1,5;11,2,5;101,2,5'); // 测试修改用例 5 需求
|
||||
r($testcase->updateCase2ProjectTest($caseIDList[3], $objectTypeList[0], $objectIDList[1])) && p('0:project,product,case') && e('102,1,7'); // 测试修改用例 7 产品
|
||||
r($testcase->updateCase2ProjectTest($caseIDList[3], $objectTypeList[1], $objectIDList[3])) && p('0:project,product,case;1:project,product,case;2:project,product,case') && e('102,1,7;11,2,7;101,2,7'); // 测试修改用例 7 需求
|
||||
r($testcase->updateCase2ProjectTest($caseIDList[4], $objectTypeList[0], $objectIDList[1])) && p('0:project,product,case') && e('103,1,9'); // 测试修改用例 9 产品
|
||||
r($testcase->updateCase2ProjectTest($caseIDList[4], $objectTypeList[1], $objectIDList[3])) && p('0:project,product,case;1:project,product,case;2:project,product,case') && e('103,1,9;11,3,9;101,3,9'); // 测试修改用例 9 需求
|
||||
system("./ztest init");
|
||||
Reference in New Issue
Block a user