diff --git a/module/testcase/control.php b/module/testcase/control.php
index 2b97ef86ac..690063cc0d 100644
--- a/module/testcase/control.php
+++ b/module/testcase/control.php
@@ -68,6 +68,9 @@ class testcase extends control
$this->session->set('browseType', $browseType);
$this->session->set('orderBy', $orderBy);
+ /* Load lang. */
+ $this->app->loadLang('testtask');
+
/* Load pager. */
$this->app->loadClass('pager', $static = true);
$pager = pager::init($recTotal, $recPerPage, $pageID);
diff --git a/module/testcase/js/browse.js b/module/testcase/js/browse.js
index c24929c408..3379b5f155 100644
--- a/module/testcase/js/browse.js
+++ b/module/testcase/js/browse.js
@@ -30,4 +30,5 @@ $(document).ready(function()
$(document).ready(function()
{
if($('a.export').size()) $("a.export").colorbox({width:400, height:200, iframe:true, transition:'elastic', speed:350, scrolling:true});
+ $(".results").colorbox({width:900, height:600, iframe:true, transition:'none'});
})
diff --git a/module/testcase/js/view.js b/module/testcase/js/view.js
index fc84f392f3..42cff59a82 100755
--- a/module/testcase/js/view.js
+++ b/module/testcase/js/view.js
@@ -1,4 +1,5 @@
$(document).ready(function()
{
$(".runcase").colorbox({width:900, height:600, iframe:true, transition:'none'});
+ $(".results").colorbox({width:900, height:600, iframe:true, transition:'none'});
})
diff --git a/module/testcase/view/browse.html.php b/module/testcase/view/browse.html.php
index 4091f0b296..f2b06796af 100644
--- a/module/testcase/view/browse.html.php
+++ b/module/testcase/view/browse.html.php
@@ -60,8 +60,10 @@ var moduleID = '';
typeAB);?> |
openedByAB);?> |
+ testtask->lastRun);?> |
+ testtask->lastResult);?> |
statusAB);?> |
- actions;?> |
+ actions;?> |
@@ -76,12 +78,15 @@ var moduleID = '';
testcase->typeList[$case->type];?> |
openedBy];?> |
+ lastRun)) echo date(DT_MONTHTIME1, strtotime($case->lastRun));?> |
+ lastResult) echo $lang->testcase->resultList[$case->lastResult];?> |
testcase->statusList[$case->status];?> |
id", $lang->testcase->buttonEdit);
common::printLink('testcase', 'delete', "caseID=$case->id", $lang->delete, 'hiddenwin');
common::printLink('testtask', 'runCase', "runID=0&extras=caseID=$case->id", $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"');
?>
|
diff --git a/module/testcase/view/view.html.php b/module/testcase/view/view.html.php
index 2e9f41745c..75f195b2e4 100644
--- a/module/testcase/view/view.html.php
+++ b/module/testcase/view/view.html.php
@@ -20,6 +20,7 @@
if(!$case->deleted)
{
common::printLink('testtask', 'runCase', "runID=0&extras=version=$currentVersion,caseID=$case->id", $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('testcase', 'edit', "caseID=$case->id", $lang->testcase->buttonEdit);
common::printLink('testcase', 'create', "productID=$case->product&moduleID=$case->module&testcaseID=$case->id", $lang->copy);
common::printLink('testcase', 'delete', "caseID=$case->id", $lang->delete, 'hiddenwin');
@@ -128,6 +129,14 @@
| testcase->status;?> |
testcase->statusList[$case->status];?> |
+
+
+ | app->loadLang('testtask')->testtask->lastRun;?> |
+ lastRun)) echo $case->lastRun;?> |
+
+
+ | app->loadLang('testtask')->testtask->lastResult;?> |
+ lastResult) echo $lang->testcase->resultList[$case->lastResult];?> |
| testcase->keywords;?> |
diff --git a/module/testtask/control.php b/module/testtask/control.php
index 8ecbe993df..1116728ba3 100644
--- a/module/testtask/control.php
+++ b/module/testtask/control.php
@@ -356,13 +356,27 @@ class testtask extends control
* View test results of a test run.
*
* @param int $runID
+ * @param string $extras others params, forexample, caseID=10
* @access public
* @return void
*/
- public function results($runID)
+ public function results($runID, $extras = '')
{
- $this->view->run = $this->testtask->getRunById($runID);
- $this->view->results = $this->testtask->getRunResults($runID);
+ /* Pares the extras */
+ $extras = str_replace(array(',', ' '), array('&', ''), $extras);
+ parse_str($extras);
+
+ if(isset($caseID))
+ {
+ $this->view->run->case = $this->loadModel('testcase')->getById($caseID, $version);
+ $this->view->results = $this->testtask->getResults(0, $caseID);
+ }
+ else
+ {
+ $this->view->run = $this->testtask->getRunById($runID);
+ $this->view->results = $this->testtask->getResults($runID);
+ }
+
die($this->display());
}
diff --git a/module/testtask/model.php b/module/testtask/model.php
index e45c0c0962..0168cb7ada 100644
--- a/module/testtask/model.php
+++ b/module/testtask/model.php
@@ -242,6 +242,7 @@ class testtaskModel extends model
->remove('steps,reals,passall')
->get();
$this->dao->insert(TABLE_TESTRESULT)->data($result)->autoCheck()->exec();
+ $this->dao->update(TABLE_CASE)->set('lastRun')->eq($now)->set('lastResult')->eq($caseResult)->where('id')->eq($this->post->case)->exec();
if(!isset($caseID))
{
@@ -260,15 +261,23 @@ class testtaskModel extends model
}
/**
- * Get results of a test run.
+ * Get results by runID or caseID
*
* @param int $runID
* @access public
* @return array
*/
- public function getRunResults($runID)
+ public function getResults($runID, $caseID = 0)
{
- $results = $this->dao->select('*')->from(TABLE_TESTRESULT)->where('run')->eq($runID)->orderBy('id desc')->fetchAll('id');
+ if($caseID != 0)
+ {
+ $results = $this->dao->select('*')->from(TABLE_TESTRESULT)->where('`case`')->eq($caseID)->orderBy('id desc')->fetchAll('id');
+ }
+ else
+ {
+ $results = $this->dao->select('*')->from(TABLE_TESTRESULT)->where('run')->eq($runID)->orderBy('id desc')->fetchAll('id');
+ }
+
if(!$results) return array();
foreach($results as $resultID => $result)
{