* change the logic of getResutls by caseID or runID in testtask module.
This commit is contained in:
@@ -88,7 +88,7 @@ var moduleID = '<?php echo $moduleID;?>';
|
||||
common::printLink('testcase', 'edit', "caseID=$case->id", $lang->testcase->buttonEdit);
|
||||
common::printLink('testcase', 'delete', "caseID=$case->id", $lang->delete, 'hiddenwin');
|
||||
common::printLink('testtask', 'runCase', "runID=0&caseID=$case->id&version=$case->version", $this->app->loadLang('testtask')->testtask->runCase, '', 'class="runcase"');
|
||||
common::printLink('testtask', 'results', "runID=0&extras=caseID=$case->id,version=$case->version", $lang->testtask->results, '', 'class="results"');
|
||||
common::printLink('testtask', 'results', "runID=0&caseID=$case->id", $lang->testtask->results, '', 'class="results"');
|
||||
if(!($case->lastResult == 'fail' and common::printLink('bug', 'create', "product=$case->product&extra=caseID=$case->id,version=$case->version,runID=", $lang->testtask->createBug))) echo $lang->testtask->createBug;
|
||||
?>
|
||||
</td>
|
||||
|
||||
@@ -341,34 +341,20 @@ class testtask extends control
|
||||
* View test results of a test run.
|
||||
*
|
||||
* @param int $runID
|
||||
* @param string $extras others params, forexample, caseID=10
|
||||
* @param int $caseID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function results($runID, $extras = '')
|
||||
public function results($runID, $caseID = 0)
|
||||
{
|
||||
/* Pares the extras */
|
||||
$extras = str_replace(array(',', ' '), array('&', ''), $extras);
|
||||
parse_str($extras);
|
||||
|
||||
if(isset($caseID))
|
||||
if($caseID)
|
||||
{
|
||||
$results = $this->testtask->getResults(0, $caseID);
|
||||
foreach($results as $result)
|
||||
{
|
||||
$relatedVersions[] = $result->version;
|
||||
}
|
||||
$relatedVersions = array_unique($relatedVersions);
|
||||
|
||||
$run->case = $this->loadModel('testcase')->getById($caseID, 1);
|
||||
$run->case->steps = $this->dao->select('*')->from(TABLE_CASESTEP)->where('`case`')->eq($caseID)->andWhere('version')->in($relatedVersions)->fetchAll();
|
||||
|
||||
$this->view->results = $results;
|
||||
$this->view->run = $run;
|
||||
$this->view->case = $this->loadModel('testcase')->getByID($caseID);
|
||||
$this->view->results = $this->testtask->getResults(0, $caseID);
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->view->run = $this->testtask->getRunById($runID);
|
||||
$this->view->case = $this->testtask->getRunById($runID)->case;
|
||||
$this->view->results = $this->testtask->getResults($runID);
|
||||
}
|
||||
|
||||
|
||||
@@ -273,13 +273,14 @@ class testtaskModel extends model
|
||||
* Get results by runID or caseID
|
||||
*
|
||||
* @param int $runID
|
||||
* @param int $caseID
|
||||
* @access public
|
||||
* @return array
|
||||
*/
|
||||
public function getResults($runID, $caseID = 0)
|
||||
{
|
||||
if($caseID != 0)
|
||||
{
|
||||
if($caseID > 0)
|
||||
{
|
||||
$results = $this->dao->select('*')->from(TABLE_TESTRESULT)->where('`case`')->eq($caseID)->orderBy('id desc')->fetchAll('id');
|
||||
}
|
||||
else
|
||||
@@ -288,11 +289,36 @@ class testtaskModel extends model
|
||||
}
|
||||
|
||||
if(!$results) return array();
|
||||
|
||||
$relatedVersions = array();
|
||||
foreach($results as $result)
|
||||
{
|
||||
$relatedVersions[] = $result->version;
|
||||
$runCaseID = $result->case;
|
||||
}
|
||||
$relatedVersions = array_unique($relatedVersions);
|
||||
|
||||
$relatedSteps = $this->dao->select('*')->from(TABLE_CASESTEP)
|
||||
->beginIF($caseID)->where('`case`')->eq($caseID)->fi()
|
||||
->beginIF($runID)->where('`case`')->eq($runCaseID)->fi()
|
||||
->andWhere('version')->in($relatedVersions)
|
||||
->fetchAll();
|
||||
|
||||
foreach($results as $resultID => $result)
|
||||
{
|
||||
$result->stepResults = unserialize($result->stepResults);
|
||||
$results[$resultID] = $result;
|
||||
|
||||
foreach($relatedSteps as $key => $step)
|
||||
{
|
||||
if($result->version == $step->version)
|
||||
{
|
||||
$result->stepResults[$step->id]['desc'] = $step->desc;
|
||||
$result->stepResults[$step->id]['expect'] = $step->expect;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $results;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?php
|
||||
/**
|
||||
* The runrun view file of testtask of ZenTaoPMS.
|
||||
* The resutls view file of testtask of ZenTaoPMS.
|
||||
*
|
||||
* @copyright Copyright 2009-2011 青岛易软天创网络科技有限公司 (QingDao Nature Easy Soft Network Technology Co,LTD www.cnezsoft.com)
|
||||
* @license LGPL (http://www.gnu.org/licenses/lgpl.html)
|
||||
@@ -11,10 +11,10 @@
|
||||
*/
|
||||
?>
|
||||
<?php include '../../common/view/header.lite.html.php';?>
|
||||
<h1>CASE#<?php echo $run->case->id. $lang->colon . $run->case->title;?></h1>
|
||||
<h1>CASE#<?php echo $case->id. $lang->colon . $case->title;?></h1>
|
||||
<fieldset>
|
||||
<legend><?php echo $lang->testcase->precondition;?></legend>
|
||||
<?php echo $run->case->precondition;?>
|
||||
<?php echo $case->precondition;?>
|
||||
</fieldset>
|
||||
<?php foreach($results as $result):?>
|
||||
<table class='table-1'>
|
||||
@@ -27,31 +27,23 @@
|
||||
<th class='w-p20'><?php echo $lang->testcase->real;?></th>
|
||||
</tr>
|
||||
<?php
|
||||
$relatedCaseSteps = array();
|
||||
foreach($run->case->steps as $key => $step)
|
||||
{
|
||||
if($result->version == $step->version)
|
||||
{
|
||||
$relatedCaseSteps[] = $step;
|
||||
}
|
||||
}
|
||||
foreach($relatedCaseSteps as $key => $step):
|
||||
$i = 1;
|
||||
foreach($result->stepResults as $key => $stepResult):
|
||||
?>
|
||||
<?php $stepResult = ''; if(!empty($result->stepResults)) $stepResult = (object)$result->stepResults[$step->id];?>
|
||||
<tr>
|
||||
<th><?php echo $key + 1;?></th>
|
||||
<td><?php echo nl2br($step->desc);?></td>
|
||||
<td><?php echo nl2br($step->expect);?></td>
|
||||
<th><?php echo $i;?></th>
|
||||
<td><?php echo nl2br($stepResult['desc']);?></td>
|
||||
<td><?php echo nl2br($stepResult['expect']);?></td>
|
||||
<?php if(!empty($result->stepResults)):?>
|
||||
<td class='<?php echo $stepResult->result;?> a-center'><?php echo $lang->testcase->resultList[$stepResult->result];?></td>
|
||||
<td><?php echo $stepResult->real;?></td>
|
||||
<td class='<?php echo $stepResult['result'];?> a-center'><?php echo $lang->testcase->resultList[$stepResult['result']];?></td>
|
||||
<td><?php echo $stepResult['real'];?></td>
|
||||
</tr>
|
||||
<?php if($stepResult->result == 'blocked' or $stepResult->result == 'fail') break;?>
|
||||
<?php if($stepResult['result'] == 'blocked' or $stepResult['result'] == 'fail') break;?>
|
||||
<?php else:?>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<?php endif;?>
|
||||
<?php endif; $i++;?>
|
||||
<?php endforeach;?>
|
||||
</table>
|
||||
<?php endforeach;?>
|
||||
|
||||
Reference in New Issue
Block a user