• TestLink 增加在执行用例界面的历史相关bug功能


    在之前配置TestLink的过程中,考虑在执行的过程中,显示该用例关联过的缺陷,作为测试执行参考,需要在execSetResults.php里面增加部分代码,代码如下:

    //blew function is added by hengleiwang 2013/3/21
    /*
    Add this function to list all of them bugs that have been related to this testcases
    */
       
    function exec_get_testcase_related_bugs(&$db,&$bug_interface,$tcversionSet)
    {
        $bugs = null;
        $bugs = get_bugs_for_testcase($db,$bug_interface,$tcversionSet);
        return $bugs;
           
    }
    $gui->case_related_bug = exec_get_testcase_related_bugs($db,$g_bugInterface,$gui->tcversionSet);
    if (count($gui->case_related_bug) == 0) 
    {
      $gui->case_related_bug = null;
    }
    inc_exec_controls.tpl
    
    {*input the code here for test cases related bugs;*---by henrywang}
    {* Execution Bugs (if any) *}
            {if isset($gui->case_related_bug)}
            <div class="exec_history_title">
            关联到这个用例的缺陷
            </div>
            <table style="95%;">
            <tr style="background-color: {$bg_color}" >
                <td colspan="{$my_colspan}" style="align:center;">
                    {*BUGID 3587*}
                    {include file="inc_show_bug_table_without_del.tpl"
                         bugs_map=$gui->case_related_bug
                    }
                </td>
            </tr>
            {/if}
        </table>
    {*end the input*------by henrywang}
    inc_show_bug_table_without_del.tpl
    
    {* 
    Testlink Open Source Project - http://testlink.sourceforge.net/ 
    $Id: inc_show_bug_table.tpl,v 1.10 2010/07/09 11:41:15 mx-julian Exp $
      
    rev :
          20100709 - Julian - show greyed delete icon if delete is not allowed
          20070304 - franciscom - added single quotes on bug_id on deleteBug_onClick() call
                                  message improvement
                                  added title on delete image. 
    *}
    {* -------------------------------------------------------------------------------------- *}
    {* Manage missing arguments                                                               *}
    {if !isset($tableClassName) }
        {assign var="tableClassName"  value="simple"}
    {/if}
    {if !isset($tableStyles) }
        {assign var="tableStyles"  value="font-size:12px"}
    {/if}
    {* -------------------------------------------------------------------------------------- *}
    <table class="simple">
      <tr>
          <th style="text-align:left">{lang_get s='build'}</th>
          <th style="text-align:left">{lang_get s='caption_bugtable'}</th>
          <th style="text-align:left">&nbsp;</th>
      </tr>
        
        {foreach from=$bugs_map key=bug_id item=bug_elem}
        <tr>
            <td>{$bug_elem.build_name|escape}</td>
            <td>{$bug_elem.link_to_bts}</td>
        </tr>
        {/foreach}
    </table>
             
    exec.inc.php
    
    /*
    * get bugs for the testcase
    * added by hengleiwang 2013/3/21
    */
    function get_bugs_for_testcase($db,&$bug_interface,$tcversionSet)
    {
        $tables['execution_bugs'] = DB_TABLE_PREFIX . 'execution_bugs';
        $tables['executions'] = DB_TABLE_PREFIX . 'executions';
        $tables['builds'] = DB_TABLE_PREFIX . 'builds';
          
        $bug_list=array();
        $sql = "SELECT bug_id,builds.name AS build_name " .
            "FROM {$tables['execution_bugs']}, {$tables['executions']} executions, " .
            " {$tables['builds']} builds ".
            "WHERE executions.tcversion_id ={$tcversionSet} " .
            "AND   execution_id=executions.id " .
            "AND   executions.build_id=builds.id " .
            "ORDER BY builds.name,bug_id";
        $map = $db->get_recordset($sql);
          
        // BUGID 3440 - added is_object() check
        if( !is_null($map) && is_object($bug_interface))
        {   
            foreach($map as $elem)
            {
                $bug_list[$elem['bug_id']]['link_to_bts'] = $bug_interface->buildViewBugLink($elem['bug_id'],GET_BUG_SUMMARY);
                $bug_list[$elem['bug_id']]['build_name'] = $elem['build_name'];
            }
        }
          
        return($bug_list);
    }
    View Code
  • 相关阅读:
    存储:块存储/文件存储/对象存储
    系统调用system call以及strace/dtruss
    JBoss EAP应用服务器部署方法和JBoss 开发JMS消息服务小例子
    在IE中,JS方法名和input的name重名时,调用该方法无效
    html 使表格随着内容自动适应宽度
    Jboss 安全和优化
    java网页数据抓取实例
    Eclipse+Weblogic 12开发简单的Enterprise Application
    eclipse中整合ejb和web工程
    破解 jar 包之直接修改 .class 文件方式
  • 原文地址:https://www.cnblogs.com/yunmenzhe/p/4602391.html
Copyright © 2020-2023  润新知