UML软件工程组织

 

 

TestLink安装配置手册
 
作者:yolanda 来源:cntesting博客
 

范围

本文仅作为安装和配置TestLink的参考文档。

本文的第一部分为TestLink的安装步骤,第二部分是TestLink的配置方法。

本文和其他相关文档可在TestLink网站上找到。您也可以在TestLink的论坛中寻求帮助

一般TestLink安装的步骤如下:

1. 下载TestLink

2. 解压文件

3. 创建数据库

4. 导入缺省数据

5. 编辑配置文件

6. PHP文件扩展

7. 登录TestLink

系统需求

要使TestLink正常运行,需要安装以下软件:

MySQL 4.1.x及以上

php 4.3.x及以上

WebServer (Apache 1.3.x或2.0.x及以上,IIS 3及以上,等等,更详细的信息请参见<php安装目录>/install.txt)

对于操作系统平台没有特别要求(TestLink已经在Linux和MS Win32平台上测试通过)

你也可以将数据库与TestLink分别安装在不同的服务器上

安装步骤

在安装TestLink之前应先完成以下步骤:

1. 安装环境:Webserver、php4和MySQL,安装方法参见这些应用软件的安装文档。

我是在winXP下安装的,webserver是IIS,PHP5.1.2,MySql的版本是5.0.18

IIS的安装就不多说了,下面主要讲讲PHP

从5.0开始,PHP对MySql的支持需要手动配置

将php_mysql.dll 和libmySQL.dll 文件拷贝到winnt\system32目录里,这两个文件可以在PHP安装目录里找到。
编辑<windows>目录下php.ini,将;extension=php_mysql.dll前面的“;”去掉

2. 将TestLink的安装文件复制到服务器上。

3. 解压缩Testlink的安装文件。

数据库安装

自动安装

手工安装

创建MySQL数据库

CREATE DATABASE testlink CHARACTER SET utf8 COLLATE utf8_general_ci

创建数据表

# mysql -u <user> -p<password> <dbname> <<testlinkdir>/install/sql/testlink_create_tables.sql

导入缺省数据

# mysql -u <user> -p<password> <dbname> < <testlinkdir>/install/sql/testlink_create_default_data.sql

也可以使用mysql客户端工具进行创建数据库的操作。

在<testlinkdir>目录下创建config_db.inc.php文件

<?php // Automatically Generated by TestLink Installer

define('DB_TYPE', 'mysql');

define('DB_USER', 'root');

define('DB_PASS', 'root');

define('DB_HOST', 'localhost');

define('DB_NAME', 'testlink');

?>

配置

配置文件

<testlink installation directory>/config.inc.php - 主要的配置文件,后面会做详细介绍

<testlink installation directory>/config_db.inc.php - 包含访问数据库的所有配置参数。这个文件在安装或升级过程中产生。通常不必做手工修改

<testlink installation directory>/cfg/<bug_tracking_system>.cfg.php
/cfg/bugzilla.cfg.php )
/cfg/mantis.cfg.php
/cfg/jira.cfg.php
包含访问bugzilla、mantis或者jira等缺陷跟踪系统的配置参数。如果想从TestLink直接访问这些系统,需要手工修改这些文件,另外这个功能需要在config.inc.php文件中修改一个配置参数。

必须修改的参数

必须修改的参数
DB_SUPPORTS_UTF8
MySQL4.1以前的版本不支持utf8,因此所有的页面使用ISO-8859-1字符集而数据则以latin1字符集存入数据库,令DB_SUPPORTS_UTF8 = FALSE;
MySQL4.1及以后的版本,令DB_SUPPORTS_UTF8 = TRUE,使全部页面支持UTF-8而数据以utf8字符集存入数据库。

可能需要修改的参数
TL_LOG_LEVEL_DEFAULT
日志记录的缺省级别,日志级别有(NONE、ERROR、INFO、DEBUG)。DEBUG级别只在开发或者与bug系统集成时使用

TL_LOG_PATH
日志文件的文件名和路径

MAIN_PAGE_METRICS_ENABLED
这个参数控制矩阵表格是否显示在主页上,允许“TURE”和“FALSE”两个值

TL_INTERFACE_BUGS
设置testlink和缺陷跟踪系统的接口。允许的值为:“NO”、“BUGZILLA”、“MANTIS”
与BUGZILLA的接口配置参见cfg/bugzilla.cfg.php,支持0.19.1
与MANTIS的接口配置参见cfg/mantis.cfg.php,支持1.0.0.a3

TL_TREE_KIND
这个参数用于配置testlink所使用的树形菜单,允许的值为“LAYERSMENU”、“JTREE”、“DTREE”
LAYERSMENU 是缺省值;在这里,JTREE的性能最好;其他的两种树形菜单,可以记住上一次的位置。

TL_IMPORT_LIMIT
最大可以上传的文件的大小,单位是bytes。缺省值是200000。如果需要上传一个更大的文件,你可以加大这个值。另外还有一个参数:TL_IMPORT_ROW_MAX,用户规定导出文件一行最长可以有多长字符,10000字符已经足够了。

$g_fckeditor_toolbar
定义fckeditor工具条,你可以修改其内容。这个部件的更详细的信息参见fckeditor的主页(http://www.fckeditor.net/)

TL_TPL_CHARSET
中文用户只需要设置:define('TL_TPL_CHARSET','gb2312');这样就定义了正确的html字符集。其他的语言可以不必修改这个参数

TL_DEFAULT_LOCALE
置缺省语言,必须是$g_locales的一个值。缺省值是en_GB。

TL_COMPANY,TL_DOC_COPYRIGHT,TL_DOC_CONFIDENT
用于文档抬头,如果不用写抬头,就置这些参数为空。

自定义参数

级联样式表

可以编写你自己的级联样式表改变TestLink的外观。
你必须修改以下定义:

define('TL_LOGIN_CSS','gui/css/tl_login.css'); - 登录、登出的CSS文件

define('TL_TESTLINK_CSS','gui/css/testlink.css'); - 主页的CSS文件

define('TL_DOC_BASIC_CSS','gui/css/tl_doc_basic.css'); - 用于测试报告

重要:CSS文件的路径是相对于<TestLink的安装目录>的路径,是相对路径

如果要使用自己的CSS文件,建议进行如下操作:

1. 在gui目录下创建一个新的目录,例如 “gui/css/my_css/”
2. 复制testlink原文件到新的目录
3. 按你的想法修改它们
4. 编辑config.inc.php文件:
// Original configuration
//define('TL_LOGIN_CSS','gui/css/tl_login.css');
//define('TL_TESTLINK_CSS','gui/css/testlink.css');
//define('TL_DOC_BASIC_CSS','gui/css/tl_doc_basic.css');
define('TL_LOGIN_CSS','gui/css/my_css/tl_login_acqua.css');
define('TL_TESTLINK_CSS','gui/css/my_css/testlink_acqua.css');
define('TL_DOC_BASIC_CSS','gui/css/my_css/tl_doc_basic.css');

当产品、部件、分类、测试用例重名时的处理

当从一个已经复制一个产品、部件、分类、测试用例时,经常会发生重名的情况。

你可以配置如何处理复制:

如果你设置$g_check_names_for_duplicates=TRUE,那么系统就会进行以下的检查

  1. 产品名是否唯一
  2. 产品下的部件名是否唯一
  3. 部件下的分类名是否唯一
  4. 分类下的测试用例名是否唯一

一旦置$g_check_names_for_duplicates=TRUE,你可以配置如果进行操作,如果发现重名的情况,就使用$g_action_on_duplicate_name,选项如下:

'allow_repeat':允许重名(可以和1.0.4、1.5.x兼容)
'generate_new':生成新名称,将"$g_prefix_name_for_copy"的值和原名合并,成为一个新名字
'block':返回一个错误

例如:

$g_action_on_duplicate_name='allow_repeat';
$g_prefix_name_for_copy= strftime("%Y%m%d-%H:%M:%S", time());

允许重复,并将当前时间以(年月日-时分秒)的格式做为原来的名字的前缀。

测试计划和产品的关联

从1.6版开始,当创建一个测试计划(Test Plan)时,缺省情况下测试计划会和当前所选择的产品相关联。这意味着你可以以产品为关键字过滤测试计划(Test Plan)。在1.6版本之前,Test Plan没有和指定的产品相关联,当从1.5.x升级到1.6时,安装程序不能将测试计划和产品相关联从而将测试计划的product ID项置为0。这样做将导致老的测试计划将不能被看到。要解决这个问题,必须添加以下参数:

$g_show_tp_without_prodid=TRUE;

你也可以通过在数据库中手工关联,以便使用以前的数据。

通过产品过滤测试计划
使用以下参数:

$g_ui_show_check_filter_tp_by_product

你可以:

允许用户通过界面来使能测试计划过滤功能。$g_ui_show_check_filter_tp_by_product = TRUE时,在测试计划之前显示了一个复选框。
$g_ui_show_check_filter_tp_by_product = FALSE时。强制测试计划的过滤,并且用户不能修改

关键字管理
如果不想为同一个产品创建相同的关键字:

$g_allow_duplicate_keywords=FALSE;

日期和时间本地化
设置日期和时间的显示方式。使用两个关联的数组进行配置:$g_locales_date_format 和 $g_locales_timestamp_format.

$g_locales_date_format = array( 丛UJ躴蹗 ?
'en_GB' => "%d/%m/%Y", 'it_IT' => "%d/%m/%Y",
'es_AR' => "%d/%m/%Y", 'es_ES' => "%d/%m/%Y",
'de_DE' => "%d.%m.%Y", 'fr_FR' => "%d/%m/%Y",
'pt_BR' => "%d/%m/%Y" );

$g_locales_timestamp_format = array(

'en_GB' => "%d/%m/%Y %H:%M:%S",
'it_IT' => "%d/%m/%Y %H:%M:%S",
'es_AR' => "%d/%m/%Y %H:%M:%S",
'es_ES' => "%d/%m/%Y %H:%M:%S",
'de_DE' => "%d.%m.%Y %H:%M:%S",
'fr_FR' => "%d/%m/%Y %H:%M:%S",
'pt_BR' => "%d/%m/%Y %H:%M:%S", );

在上述数组中没有找到匹配的本地化格式,以下配置参数将被使用:$g_date_format 和 $g_timestamp_format

例如:

$g_date_format ="%d/%m/%Y";
$g_timestamp_format = "%d/%m/%Y %H:%M:%S";

从需求生成测试用例
在创建需求SRS之后,可以选择为每个测试需求创建测试用例(部件和分类也同时被创建)

使用配置参数:$g_reg_cfg,你可以配置:

创建的部件的名字:$g_req_cfg->default_component_name="Component Created by Requirement - Auto";
部件的范围:$g_req_cfg->scope_for_component="Component/Category/Test Cases generated from Requirements";
创建的分类的名字:$g_req_cfg->default_category_name="TODO";
分类的目标描述:$g_req_cfg->objective_for_category="Category/Test Cases generated from Requirements";
分类的名字可以作如下配置:

$g_req_cfg->use_req_spec_as_category_name=TRUE;
将需求名称做为分类名称
$g_req_cfg->use_req_spec_as_category_name=FALSE;
那么$g_req_cfg->default_category_name将做为分类的名称
使用自己的Smarty模板(GUI定义)
使用自定义模板,要用到以下参数:$g_tpl

$g_tpl['tcView']

$g_tpl['tcSearchView']

$g_tpl['tcEdit']

$g_tpl['tcNew']

$g_tpl['execSetResults']

允许创建新的模板,而且新的模板采用不同于原始TestLink模板的名字,以避免在下次升级过程中被覆盖

注意:不是所有的TestLink页面都可以进行这样的配置

标准配置如下:

$g_tpl['tcView'] = "tcView.tpl";
$g_tpl['tcSearchView'] = "tcSearchView.tpl";
$g_tpl['tcEdit'] = "tcEdit.tpl";
$g_tpl['tcNew'] = "tcNew.tpl";
$g_tpl['execSetResults'] = "execSetResults.tpl";

FAQ

以下是常见问题,更多问题请查看TestLink的论坛

问1:我从老版本升级后,不能登录

答:你的原始数据库版本不支持不同字符集。从1.6版起,缺省的字符集是UTF-8。请在config.inc.php文件中置DB_SUPPORTS_UTF8= FALSE。

问2:登录页面显示Smarty error

答:Linux/unix 用户: 确认当前用户是否有临时目录的存取权限。缺省临时目录:<testlink_root>/gui/template_c/

 

组织简介 | 联系我们 |   Copyright 2002 ®  UML软件工程组织 京ICP备10020922号

京公海网安备110108001071号