+ [task#152997,doing,4h] add ui test for story module export
This commit is contained in:
@@ -42,7 +42,9 @@ class browsePage extends page
|
||||
'createdByMeNum' => '//*[@id="featureBar"]/menu/li[4]/a/span[2]',
|
||||
'reviewByMeNum' => '//*[@id="featureBar"]/menu/li[5]/a/span[2]',
|
||||
'draftNum' => '//*[@id="featureBar"]/menu/li[6]/a/span[2]',
|
||||
'moreNum' => '//*[@id="featureBar"]/menu/li[7]/a/span[2]'
|
||||
'moreNum' => '//*[@id="featureBar"]/menu/li[7]/a/span[2]',
|
||||
'exportBtn' => "//*[@id='exportBtn']",
|
||||
'firstStory' => '//*[@id="stories"]/div[2]/div[1]/div/div[1]',
|
||||
);
|
||||
$this->dom->xpath = array_merge($this->dom->xpath, $xpath);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,63 @@
|
||||
<?php
|
||||
require_once dirname(__FILE__, 6) . '/test/lib/ui.php';
|
||||
|
||||
class exportTester extends tester
|
||||
{
|
||||
public $form;
|
||||
|
||||
public function __construct($productID = 1, $storyType = 'story')
|
||||
{
|
||||
parent::__construct();
|
||||
$this->login();
|
||||
$params = (object)[
|
||||
'productID' => $productID,
|
||||
'branch' => '',
|
||||
'browseType'=> 'unclosed',
|
||||
'param' => 0,
|
||||
'storyType' => $storyType,
|
||||
'sort' => 'id',
|
||||
];
|
||||
$form = $this->initForm('product', 'browse', $params, 'appIframe-product');
|
||||
$form->wait(1);
|
||||
$this->form = $form;
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出全部记录测试。
|
||||
* @access public
|
||||
* @return object
|
||||
*/
|
||||
public function testExportAll()
|
||||
{
|
||||
$this->form->dom->exportBtn->click();
|
||||
$this->form->wait(1);
|
||||
|
||||
$this->form->dom->fileType->picker($this->lang->exportFileTypeList->csv);
|
||||
$this->form->dom->encode->picker($this->lang->importEncodeList->gbk);
|
||||
$this->form->dom->exportType->picker($this->lang->exportTypeList->all);
|
||||
|
||||
$this->form->dom->btn($this->lang->export)->click();
|
||||
if($this->response('method') == 'browse') return $this->success('全部记录导出流程测试成功');
|
||||
return $this->failed('全部记录导出流程测试失败');
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出选中记录测试。
|
||||
* @access public
|
||||
* @return object
|
||||
*/
|
||||
public function testExportSelected()
|
||||
{
|
||||
$this->form->dom->firstStory->click();
|
||||
$this->form->wait(1);
|
||||
$this->form->dom->exportBtn->click();
|
||||
$this->form->wait(1);
|
||||
|
||||
$this->form->dom->fileType->picker($this->lang->exportFileTypeList->html);
|
||||
$this->form->dom->exportType->picker($this->lang->exportTypeList->selected);
|
||||
|
||||
$this->form->dom->btn($this->lang->export)->click();
|
||||
if($this->response('method') == 'browse') return $this->success('选中记录导出流程测试成功');
|
||||
return $this->failed('选中记录导出流程测试失败');
|
||||
}
|
||||
}
|
||||
Executable
+54
@@ -0,0 +1,54 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
include dirname(__FILE__, 2) . '/lib/ui/export.ui.class.php';
|
||||
|
||||
/**
|
||||
|
||||
title=开源版m=story&f=export测试
|
||||
timeout=0
|
||||
cid=1
|
||||
|
||||
- 全部记录导出流程测试
|
||||
- 最终测试状态 @SUCCESS
|
||||
- 测试结果 @全部记录导出流程测试成功
|
||||
- 选中记录导出流程测试
|
||||
- 最终测试状态 @SUCCESS
|
||||
- 测试结果 @选中记录导出流程测试成功
|
||||
|
||||
*/
|
||||
|
||||
// 基本数据准备:创建产品与若干需求(含规格)用于导出测试
|
||||
$product = zenData('product');
|
||||
$product->id->range('1');
|
||||
$product->name->range('产品1');
|
||||
$product->type->range('normal');
|
||||
$product->shadow->range('0');
|
||||
$product->gen(1);
|
||||
|
||||
// 创建10条未关闭需求及其规格,供“全部/选中”两类导出测试
|
||||
$story = zenData('story');
|
||||
$story->id->range('1-10');
|
||||
$story->product->range('1');
|
||||
$story->module->range('0');
|
||||
$story->title->range('1-10')->prefix('需求');
|
||||
$story->type->range('story');
|
||||
$story->status->range('active');
|
||||
$story->stage->range('projected');
|
||||
$story->assignedTo->range('[]');
|
||||
$story->version->range('1');
|
||||
$story->gen(10);
|
||||
|
||||
$storySpec = zenData('storyspec');
|
||||
$storySpec->story->range('1-10');
|
||||
$storySpec->version->range('1');
|
||||
$storySpec->title->range('1-10');
|
||||
$storySpec->spec->range('1-10')->prefix('软件需求描述');
|
||||
$storySpec->verify->range('1-10')->prefix('需求验收');
|
||||
$storySpec->gen(10);
|
||||
|
||||
$tester = new exportTester();
|
||||
|
||||
r($tester->testExportAll()) && p('status,message') && e('SUCCESS,全部记录导出流程测试成功'); // 全部记录导出流程测试
|
||||
r($tester->testExportSelected()) && p('status,message') && e('SUCCESS,选中记录导出流程测试成功'); // 选中记录导出流程测试
|
||||
|
||||
$tester->closeBrowser();
|
||||
Reference in New Issue
Block a user