znt/module/testcase/test/zen/buildcasesforshowimport.php

57 lines
2.2 KiB
PHP
Raw Permalink Normal View History

#!/usr/bin/env php
<?php
/**
title=测试 testcaseZen::buildCasesForShowImport();
timeout=0
cid=19079
- 步骤1新增用例情况返回结果数量 @1
- 步骤2更新用例情况存在变更 @1
- 步骤3更新用例情况无变更 @0
- 步骤4处理步骤变更情况 @1
- 步骤5项目模式下的用例创建 @1
*/
// 1. 导入依赖(路径固定,不可修改)
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/testcasezen.unittest.class.php';
// 2. zendata数据准备根据需要配置
$table = zenData('case');
$table->id->range('1-5');
$table->product->range('1{5}');
$table->title->range('用例1,用例2,用例3,用例4,用例5');
$table->version->range('1,1,2,2,1');
$table->story->range('1-3,1,2');
$table->gen(5);
$storyTable = zenData('story');
$storyTable->id->range('1-3');
$storyTable->product->range('1{3}');
$storyTable->version->range('1{3}');
$storyTable->gen(3);
$stepTable = zenData('casestep');
$stepTable->id->range('1-10');
$stepTable->case->range('1-5{2}');
$stepTable->version->range('1{5},2{5}');
$stepTable->type->range('step{10}');
$stepTable->desc->range('步骤1,步骤2{9}');
$stepTable->expect->range('期望1,期望2{9}');
$stepTable->gen(10);
// 3. 用户登录(选择合适角色)
su('admin');
// 4. 创建测试实例(变量名与模块名一致)
$testcaseTest = new testcaseZenTest();
// 5. 强制要求必须包含至少5个测试步骤
r($testcaseTest->buildCasesForShowImportTest(1, true, array())) && p() && e('1'); // 步骤1新增用例情况返回结果数量
r($testcaseTest->buildCasesForShowImportTest(1, false, array('1' => array('rawID' => '1', 'title' => '修改后用例1')))) && p() && e('1'); // 步骤2更新用例情况存在变更
r($testcaseTest->buildCasesForShowImportTest(1, false, array('1' => array('rawID' => '1', 'title' => '用例1')))) && p() && e('0'); // 步骤3更新用例情况无变更
r($testcaseTest->buildCasesForShowImportTest(1, false, array('1' => array('rawID' => '1', 'steps' => '新步骤')))) && p() && e('1'); // 步骤4处理步骤变更情况
r($testcaseTest->buildCasesForShowImportTest(1, true, array(), 'project')) && p() && e('1'); // 步骤5项目模式下的用例创建