#!/usr/bin/env php id->range('1-4'); $table->account->range('user1,user2,user3,user4'); $table->realname->range('用户1,用户2,用户3,用户4'); $table->gen(4); $table = zenData('story'); $table->id->range('1-2'); $table->title->range('需求1,需求2'); $table->gen(2); $table = zenData('task'); $table->id->range('1-10'); $table->story->range('1{3},2{3},0{4}'); $table->status->range('wait{2},doing{3},done{3},closed{2}'); $table->assignedTo->range('user1{3},user2{2},user3{2},user4{3}'); $table->finishedBy->range('user1{2},user2{2},user3{3},user4{3}'); $table->closedBy->range('user1{1},user2{1},user3{2},user4{2},{4}'); $table->type->range('devel{4},test{3},design{3}'); $table->gen(10); $table = zenData('taskteam'); $table->task->range('5{2},6{2}'); $table->account->range('user1,user2,user3,user4'); $table->gen(4); su('admin'); $executionZenTest = new executionZenTest(); // 准备用户数据 $users = array( '' => '', 'user1' => '用户1', 'user2' => '用户2', 'user3' => '用户3', 'user4' => '用户4' ); // 获取任务数据,带storyTitle和assignedToRealName $tasks = $executionZenTest->tester->dao->select('t.*, s.title as storyTitle, u.realname as assignedToRealName') ->from(TABLE_TASK)->alias('t') ->leftJoin(TABLE_STORY)->alias('s')->on('t.story = s.id') ->leftJoin(TABLE_USER)->alias('u')->on('t.assignedTo = u.account') ->fetchAll(); // 步骤1:按story分组 r($executionZenTest->buildGroupTasksTest('story', $tasks, $users)) && p('0') && e('3'); // 期望有3个分组 // 步骤2:按status分组 r($executionZenTest->buildGroupTasksTest('status', $tasks, $users)) && p('0') && e('4'); // 期望有4个状态分组 // 步骤3:按assignedTo分组 r($executionZenTest->buildGroupTasksTest('assignedTo', $tasks, $users)) && p('0') && e('4'); // 期望有4个指派人分组 // 步骤4:按finishedBy分组 r($executionZenTest->buildGroupTasksTest('finishedBy', $tasks, $users)) && p('0') && e('4'); // 期望有4个完成人分组 // 步骤5:按type分组 r($executionZenTest->buildGroupTasksTest('type', $tasks, $users)) && p('0') && e('3'); // 期望有3个类型分组