Merge branch 'autoTest_liumengyi' into 'master'
* Add auto test for task. See merge request easycorp/zentaopms!2159
This commit is contained in:
@@ -2171,7 +2171,7 @@ class taskModel extends model
|
||||
$task->parentName = $parent->name;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $this->processTasks($tasks);
|
||||
}
|
||||
|
||||
@@ -563,4 +563,36 @@ class taskTest
|
||||
return $object;
|
||||
}
|
||||
}
|
||||
|
||||
public function getStoryComments($storyID)
|
||||
{
|
||||
$object = $this->objectModel->getStoryComments($storyID);
|
||||
|
||||
unset($_POST);
|
||||
if(dao::isError())
|
||||
{
|
||||
return dao::getError();
|
||||
}
|
||||
else
|
||||
{
|
||||
return $object;
|
||||
}
|
||||
}
|
||||
|
||||
public function computeWorkingHoursTest($taskID)
|
||||
{
|
||||
$result = $this->objectModel->computeWorkingHours($taskID);
|
||||
|
||||
unset($_POST);
|
||||
if(dao::isError())
|
||||
{
|
||||
return dao::getError();
|
||||
}
|
||||
else
|
||||
{
|
||||
$object = $this->objectModel->getById($taskID);
|
||||
if($object->parent) $parentObject = $this->objectModel->getById($object->parent);
|
||||
return isset($parentObject) ? $parentObject : $object;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -55,7 +55,7 @@ fields:
|
||||
format: ""
|
||||
- field: comment
|
||||
note: "备注"
|
||||
range: "1-100000"
|
||||
range: 1-100000
|
||||
prefix: "这是一个系统日志测试备注"
|
||||
postfix: ""
|
||||
loop: 0
|
||||
|
||||
@@ -117,11 +117,12 @@ fields:
|
||||
format: ""
|
||||
- field: deadline
|
||||
note: "截止日期"
|
||||
range: "2022-02-27"
|
||||
range: "(-1w)-(-1M):-1D"
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
type: timestamp
|
||||
format: "YY/MM/DD"
|
||||
- field: status
|
||||
note: "任务状态"
|
||||
range: wait,doing,done,pause,cancel,closed
|
||||
|
||||
@@ -117,11 +117,12 @@ fields:
|
||||
format: ""
|
||||
- field: deadline
|
||||
note: "截止日期"
|
||||
range: "2022-02-27"
|
||||
range: "(+1w)-(-1M):-1D"
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
type: timestamp
|
||||
format: "YY/MM/DD"
|
||||
- field: status
|
||||
note: "任务状态"
|
||||
range: wait,doing,done,pause,cancel,closed
|
||||
@@ -204,7 +205,8 @@ fields:
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
type: timestamp
|
||||
format: "YY/MM/DD"
|
||||
- field: realStarted
|
||||
note: "实际开始"
|
||||
from: common.date.v1.yaml
|
||||
@@ -212,7 +214,8 @@ fields:
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
format: "YY/MM/DD"
|
||||
type: timestamp
|
||||
- field: finishedBy
|
||||
note: "由谁完成"
|
||||
from: common.user.v1.yaml
|
||||
@@ -228,7 +231,8 @@ fields:
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
format: "YY/MM/DD"
|
||||
type: timestamp
|
||||
- field: finishedList
|
||||
note: "完成者列表"
|
||||
from: common.user.v1.yaml
|
||||
@@ -252,7 +256,8 @@ fields:
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
format: "YY/MM/DD"
|
||||
type: timestamp
|
||||
- field: closedBy
|
||||
note: "由谁关闭"
|
||||
from: common.user.v1.yaml
|
||||
@@ -268,7 +273,8 @@ fields:
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
format: "YY/MM/DD"
|
||||
type: timestamp
|
||||
- field: realDuration
|
||||
note: "实际持续时长"
|
||||
range: 1
|
||||
@@ -305,7 +311,8 @@ fields:
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
format: "YY/MM/DD"
|
||||
type: timestamp
|
||||
- field: activatedDate
|
||||
note: "重新激活日期"
|
||||
from: common.date.v1.yaml
|
||||
@@ -313,7 +320,8 @@ fields:
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
format: "YY/MM/DD"
|
||||
type: timestamp
|
||||
- field: deleted
|
||||
note: "是否删除"
|
||||
range: 0
|
||||
|
||||
326
test/data/taskson.yaml
Normal file
326
test/data/taskson.yaml
Normal file
@@ -0,0 +1,326 @@
|
||||
title: table zt_task
|
||||
desc: "任务"
|
||||
author: automated export
|
||||
version: "1.0"
|
||||
fields:
|
||||
- field: id
|
||||
note: "id"
|
||||
range: 901-910
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: parent
|
||||
note: "父任务"
|
||||
range: 601-603
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: project
|
||||
note: "所属项目"
|
||||
range: 11
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: execution
|
||||
note: "所属执行"
|
||||
range: 101
|
||||
- field: module
|
||||
note: "所属模块"
|
||||
range: 21
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: story
|
||||
note: "相关需求"
|
||||
range: 0
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: design
|
||||
note: "相关设计"
|
||||
range: 0
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: storyVersion
|
||||
note: "需求版本"
|
||||
range: 1
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: designVersion
|
||||
note: "设计版本"
|
||||
range: 0
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: fromBug
|
||||
note: "来源Bug"
|
||||
range: 0
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: name
|
||||
note: "任务名称"
|
||||
fields:
|
||||
- field: name1
|
||||
range: "子任务"
|
||||
- field: name2
|
||||
range: 1-10
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: type
|
||||
note: "任务类型"
|
||||
range: design,devel,test,study,discuss,ui,affair,misc
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: pri
|
||||
note: "优先级"
|
||||
range: 1-4
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: estimate
|
||||
note: "最初预计"
|
||||
range: 0-10
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: consumed
|
||||
note: "总计消耗"
|
||||
range: 3-12
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: left
|
||||
note: "预计剩余"
|
||||
range: 0-10
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: deadline
|
||||
note: "截止日期"
|
||||
range: "(-1w)-(-1M):-1D"
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
type: timestamp
|
||||
format: "YY/MM/DD"
|
||||
- field: status
|
||||
note: "任务状态"
|
||||
range: wait,doing,done,pause,cancel,closed
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: subStatus
|
||||
note: "子状态"
|
||||
range: 0
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: color
|
||||
note: "标题颜色"
|
||||
from: common.color.v1.yaml
|
||||
use: color
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: mailto
|
||||
note: "抄送给"
|
||||
from: common.user.v1.yaml
|
||||
use: user
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: desc
|
||||
note: "任务描述"
|
||||
range: 1-10000
|
||||
prefix: "这里是任务描述"
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: version
|
||||
note: "版本号"
|
||||
range: 1
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: openedBy
|
||||
note: "由谁创建"
|
||||
from: common.user.v1.yaml
|
||||
use: user
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: openedDate
|
||||
note: "创建日期"
|
||||
from: common.date.v1.yaml
|
||||
use: dateA
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: assignedTo
|
||||
note: "指派给"
|
||||
from: common.user.v1.yaml
|
||||
use: user
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: assignedDate
|
||||
note: "指派日期"
|
||||
from: common.date.v1.yaml
|
||||
use: dateA
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: estStarted
|
||||
note: "预计开始"
|
||||
range: "2022-01-27"
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: "YY/MM/DD"
|
||||
type: timestamp
|
||||
- field: realStarted
|
||||
note: "实际开始"
|
||||
from: common.date.v1.yaml
|
||||
use: dateB
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: "YY/MM/DD"
|
||||
type: timestamp
|
||||
- field: finishedBy
|
||||
note: "由谁完成"
|
||||
from: common.user.v1.yaml
|
||||
use: user
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: finishedDate
|
||||
note: "完成日期"
|
||||
from: common.date.v1.yaml
|
||||
use: dateA
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: finishedList
|
||||
note: "完成者列表"
|
||||
from: common.user.v1.yaml
|
||||
use: user
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: canceledBy
|
||||
note: "由谁取消"
|
||||
from: common.user.v1.yaml
|
||||
use: user
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: canceledDate
|
||||
note: "取消日期"
|
||||
from: common.date.v1.yaml
|
||||
use: dateA
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: closedBy
|
||||
note: "由谁关闭"
|
||||
from: common.user.v1.yaml
|
||||
use: user
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: closedDate
|
||||
note: "关闭日期"
|
||||
from: common.date.v1.yaml
|
||||
use: dateA
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: realDuration
|
||||
note: "实际持续时长"
|
||||
range: 1
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: planDuration
|
||||
note: "计划持续时长"
|
||||
range: 1
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: closedReason
|
||||
note: "关闭原因"
|
||||
range: ""
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: lastEditedBy
|
||||
note: "最后修改者"
|
||||
from: common.user.v1.yaml
|
||||
use: user
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: lastEditedDate
|
||||
note: "最后修改时间"
|
||||
from: common.date.v1.yaml
|
||||
use: dateA
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: activatedDate
|
||||
note: "重新激活日期"
|
||||
from: common.date.v1.yaml
|
||||
use: dateB
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: deleted
|
||||
note: "是否删除"
|
||||
range: 0
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
@@ -4,6 +4,7 @@ $builder = new stdclass();
|
||||
$builder->company = array('rows' => 1, 'extends' => array('company'));
|
||||
$builder->user = array('rows' => 1000, 'extends' => array('user'));
|
||||
$builder->dept = array('rows' => 100, 'extends' => array('dept'));
|
||||
$builder->action = array('rows' => 100, 'extends' => array('action'));
|
||||
|
||||
$builder->program = array('rows' => 10, 'extends' => array('project', 'program'));
|
||||
$builder->project = array('rows' => 90, 'extends' => array('project', 'project'));
|
||||
@@ -16,6 +17,7 @@ $builder->taskmore = array('rows' => 300, 'extends' => array('task','moreta
|
||||
$builder->taskspec = array('rows' => 600, 'extends' => array('taskspec'));
|
||||
$builder->taskmodule = array('rows' => 1800, 'extends' => array('module','taskmodule'));
|
||||
$builder->taskestimate = array('rows' => 600, 'extends' => array('taskestimate'));
|
||||
$builder->taskson = array('rows' => 10, 'extends' => array('task', 'taskson'));
|
||||
$builder->case = array('rows' => 400, 'extends' => array('case'));
|
||||
$builder->bug = array('rows' => 300, 'extends' => array('bug'));
|
||||
|
||||
|
||||
23
test/model/task/computeWorkingHours.php
Normal file
23
test/model/task/computeWorkingHours.php
Normal file
@@ -0,0 +1,23 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
|
||||
include dirname(dirname(dirname(__FILE__))) . '/class/task.class.php';
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=taskModel->computeWorkingHours();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
根据taskID计算没有父计划的计划工时 >> 1,0,3,0
|
||||
根据taskID计算有父计划的父计划工时 >> 601,18,30,18
|
||||
|
||||
*/
|
||||
|
||||
$taskIDList = array('1', '601');
|
||||
|
||||
$task = new taskTest();
|
||||
r($task->computeWorkingHoursTest($taskIDList[0])) && p('id,estimate,consumed,left') && e('1,0,3,0'); //根据taskid计算没有父计划的计划工时
|
||||
r($task->computeWorkingHoursTest($taskIDList[1])) && p('id,estimate,consumed,left') && e('601,18,31,13'); //根据taskID计算有父计划的父计划工时
|
||||
system("./ztest init");
|
||||
@@ -6,7 +6,7 @@ su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=taskModel->getByList();
|
||||
title=taskModel->getProjectID();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
|
||||
21
test/model/task/getStoryComments.php
Normal file
21
test/model/task/getStoryComments.php
Normal file
@@ -0,0 +1,21 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(dirname(dirname(__FILE__))) . '/lib/init.php';
|
||||
include dirname(dirname(dirname(__FILE__))) . '/class/task.class.php';
|
||||
su('admin');
|
||||
|
||||
/**
|
||||
|
||||
title=taskModel->getStoryComments();
|
||||
cid=1
|
||||
pid=1
|
||||
|
||||
根据executionID查找projectID >> 11
|
||||
|
||||
*/
|
||||
|
||||
$storyID = '2';
|
||||
|
||||
$task = new taskTest();
|
||||
r($task->getStoryCommentsTest($storyID)) && p('comment') && e('这是一个系统日志测试备注' . $storyID); //根据executionID查找projectID
|
||||
system("./ztest init");
|
||||
Reference in New Issue
Block a user