+ [misc] Add unit tests for metricZen::getCreateEditInfo() method
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -358,4 +358,22 @@ class metricZenTest
|
||||
if(dao::isError()) return dao::getError();
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Test getCreateEditInfo method.
|
||||
*
|
||||
* @param object $view
|
||||
* @param string $fields
|
||||
* @access public
|
||||
* @return mixed
|
||||
*/
|
||||
public function getCreateEditInfoZenTest($view, $fields = 'createdBy,implementedBy,offlineBy,lastEdited')
|
||||
{
|
||||
$method = $this->metricZenTest->getMethod('getCreateEditInfo');
|
||||
$method->setAccessible(true);
|
||||
|
||||
$result = $method->invokeArgs($this->metricZenTest->newInstance(), array($view, $fields));
|
||||
if(dao::isError()) return dao::getError();
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
Executable
+61
@@ -0,0 +1,61 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
|
||||
/**
|
||||
|
||||
title=测试 metricZen::getCreateEditInfo();
|
||||
timeout=0
|
||||
cid=0
|
||||
|
||||
- 步骤1:获取完整创建编辑信息字段数量 @4
|
||||
- 步骤2:获取指定字段信息数量 @2
|
||||
- 步骤3:获取单个字段的name信息第createdBy条的name属性 @创建者
|
||||
- 步骤4:测试空字段参数 @0
|
||||
- 步骤5:测试包含所有用户信息字段数量 @4
|
||||
|
||||
*/
|
||||
|
||||
// 1. 导入依赖(路径固定,不可修改)
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/lib/metriczen.unittest.class.php';
|
||||
|
||||
// 2. zendata数据准备(根据需要配置)
|
||||
zendata('metric')->loadYaml('metric_getcreateeditinfo', false, 2)->gen(10);
|
||||
zendata('user')->loadYaml('user_getcreateeditinfo', false, 2)->gen(5);
|
||||
|
||||
// 3. 用户登录(选择合适角色)
|
||||
su('admin');
|
||||
|
||||
// 4. 创建测试实例(变量名与模块名一致)
|
||||
$metricZenTest = new metricZenTest();
|
||||
|
||||
// 5. 🔴 强制要求:必须包含至少5个测试步骤
|
||||
$view1 = new stdclass();
|
||||
$view1->metric = new stdclass();
|
||||
$view1->metric->id = 1;
|
||||
$view1->metric->createdBy = 'admin';
|
||||
$view1->metric->createdDate = '2024-01-01 10:00:00';
|
||||
$view1->metric->implementedBy = 'admin';
|
||||
$view1->metric->implementedDate = '2024-01-11 10:00:00';
|
||||
$view1->metric->delistedBy = '';
|
||||
$view1->metric->delistedDate = '';
|
||||
$view1->metric->editedBy = 'admin';
|
||||
$view1->metric->editedDate = '2024-03-01 10:00:00';
|
||||
|
||||
$view2 = new stdclass();
|
||||
$view2->metric = new stdclass();
|
||||
$view2->metric->id = 2;
|
||||
$view2->metric->createdBy = 'user1';
|
||||
$view2->metric->createdDate = '2024-01-02 11:00:00';
|
||||
$view2->metric->implementedBy = 'user1';
|
||||
$view2->metric->implementedDate = '2024-01-12 11:00:00';
|
||||
$view2->metric->delistedBy = 'user2';
|
||||
$view2->metric->delistedDate = '2024-02-12 11:00:00';
|
||||
$view2->metric->editedBy = 'user1';
|
||||
$view2->metric->editedDate = '2024-03-02 11:00:00';
|
||||
|
||||
r(count($metricZenTest->getCreateEditInfoZenTest($view1))) && p() && e('4'); // 步骤1:获取完整创建编辑信息字段数量
|
||||
r(count($metricZenTest->getCreateEditInfoZenTest($view2, 'createdBy,offlineBy'))) && p() && e('2'); // 步骤2:获取指定字段信息数量
|
||||
r($metricZenTest->getCreateEditInfoZenTest($view1, 'createdBy')) && p('createdBy:name') && e('创建者'); // 步骤3:获取单个字段的name信息
|
||||
r(count($metricZenTest->getCreateEditInfoZenTest($view1, ''))) && p() && e('0'); // 步骤4:测试空字段参数
|
||||
r(count($metricZenTest->getCreateEditInfoZenTest($view2, 'createdBy,implementedBy,offlineBy,lastEdited'))) && p() && e('4'); // 步骤5:测试包含所有用户信息字段数量
|
||||
@@ -0,0 +1,103 @@
|
||||
---
|
||||
title: getCreateEditInfo方法测试数据
|
||||
desc: 为getCreateEditInfo方法测试提供度量项数据
|
||||
|
||||
fields:
|
||||
- field: id
|
||||
note: 度量项ID
|
||||
range: 1-10
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: name
|
||||
note: 度量项名称
|
||||
range: 测试度量1,测试度量2,测试度量3,测试度量4,测试度量5,测试度量6,测试度量7,测试度量8,测试度量9,测试度量10
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: code
|
||||
note: 度量项编码
|
||||
range: metric_code_1,metric_code_2,metric_code_3,metric_code_4,metric_code_5,metric_code_6,metric_code_7,metric_code_8,metric_code_9,metric_code_10
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: scope
|
||||
note: 度量范围
|
||||
range: system,product,project,execution,system,product,project,execution,system,product
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: object
|
||||
note: 度量对象
|
||||
range: user,story,task,bug,user,story,task,bug,user,story
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: purpose
|
||||
note: 度量用途
|
||||
range: scale,quality,efficiency,scale,quality,efficiency,scale,quality,efficiency,scale
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: createdBy
|
||||
note: 创建者
|
||||
range: admin,user1,user2,admin,user1,user2,admin,user1,user2,admin
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: createdDate
|
||||
note: 创建日期
|
||||
range: '2024-01-01 10:00:00','2024-01-02 11:00:00','2024-01-03 12:00:00','2024-01-04 13:00:00','2024-01-05 14:00:00','2024-01-06 15:00:00','2024-01-07 16:00:00','2024-01-08 17:00:00','2024-01-09 18:00:00','2024-01-10 19:00:00'
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: implementedBy
|
||||
note: 实施者
|
||||
range: admin,user1,user2,'',admin,user1,user2,'',admin,user1
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: implementedDate
|
||||
note: 实施日期
|
||||
range: '2024-01-11 10:00:00','2024-01-12 11:00:00','2024-01-13 12:00:00','','2024-01-15 14:00:00','2024-01-16 15:00:00','2024-01-17 16:00:00','','2024-01-19 18:00:00','2024-01-20 19:00:00'
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: delistedBy
|
||||
note: 下线者
|
||||
range: '',user2,admin,'',user1,user2,'',admin,user1,''
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: delistedDate
|
||||
note: 下线日期
|
||||
range: '','2024-02-12 11:00:00','2024-02-13 12:00:00','','2024-02-15 14:00:00','2024-02-16 15:00:00','','2024-02-18 17:00:00','2024-02-19 18:00:00',''
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: editedBy
|
||||
note: 编辑者
|
||||
range: admin,user1,user2,admin,user1,user2,admin,user1,user2,admin
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: editedDate
|
||||
note: 编辑日期
|
||||
range: '2024-03-01 10:00:00','2024-03-02 11:00:00','2024-03-03 12:00:00','2024-03-04 13:00:00','2024-03-05 14:00:00','2024-03-06 15:00:00','2024-03-07 16:00:00','2024-03-08 17:00:00','2024-03-09 18:00:00','2024-03-10 19:00:00'
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
@@ -0,0 +1,40 @@
|
||||
---
|
||||
title: getCreateEditInfo方法测试用户数据
|
||||
desc: 为getCreateEditInfo方法测试提供用户数据
|
||||
|
||||
fields:
|
||||
- field: id
|
||||
note: 用户ID
|
||||
range: 1-5
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: account
|
||||
note: 用户账号
|
||||
range: admin,user1,user2,user3,user4
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: realname
|
||||
note: 真实姓名
|
||||
range: 管理员,用户1,用户2,用户3,用户4
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: password
|
||||
note: 密码
|
||||
range: admin123,user123,user223,user323,user423
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
- field: deleted
|
||||
note: 删除状态
|
||||
range: '0'
|
||||
prefix: ""
|
||||
postfix: ""
|
||||
loop: 0
|
||||
format: ""
|
||||
Reference in New Issue
Block a user