2008年10月20日星期一

TestLink安装配置手册(网络收集和自我总结)

TestLink安装配置手册
 
 
范围
 
 
本文仅作为安装和配置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文件中修改一个配置参数。
 
 
 
***************<testlink installation directory>/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字符集存入数据库。
 
 
 
/** [LOGGING] */
/** @see logging.inc.php for more information */
$g_log_path=TL_TEMP_PATH;
 
/** Default level of logging (NONE, ERROR, INFO, DEBUG, EXTENDED) */
$g_log_level='NONE';
 

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

// Display name and surename in all user lists
// $g_show_realname=TRUE; -> use the function format_username()
//                           to display user identification
//                           using $g_username_format
$g_show_realname = TRUE;//FALSE   // 显示真实姓名
 
// used by function format_username()
// example: user ux555, real name= John Cook
// '%first% %last%'          -> John Cook
// '%last%, %first%'          -> John Cook
// '%first% %last% %login%'    -> John Cook [ux555]
$g_username_format = '%last%%first%'; 姓与名的排列
 

MAIN_PAGE_METRICS_ENABLED  //1.7.4 已删除这个功能
这个参数控制矩阵表格是否显示在主页上,允许"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
用于文档抬头,如果不用写抬头,就置这些参数为空。
 
自定义参数
 
 
 
级联样式表
 
*****************************关联mantis设置*************************************
 
$g_interface_bugs='MANTIS';
 
在custom_config.inc.php文件下加入
 
$g_interface_bugs='MANTIS';
 
在cfg\mantis.cfg.php 设置mantis参数
 

在mantis中必须增加一个匿名用户!
config_defaults_inc.php
# --- anonymous login -----------
# Allow anonymous login
$g_allow_anonymous_login = ON;
$g_anonymous_account  = 'dummy';
 
 
 
******************可以编写你自己的级联样式表改变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;
 

**************************testlink\cfg\const.inc.php*********************************
 
日期和时间本地化
设置日期和时间的显示方式。使用两个关联的数组进行配置:$g_locales_date_format 和 $g_locales_timestamp_format.
 
$g_locales_date_format = array(
'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/
 
***********************************************************
 
2007-12-7
 
修改首页功能是在 gui\templates\login.tpl
下面是注册新用户
{* BUGID 695 *}
 {if $g_user_self_signup eq true}
  <a href="firstLogin.php">{lang_get s='new_user_q'}</a><br />
 {/if}
 
链接testlink官网
{include file="inc_copyrightnotice.tpl"}
 
 
 

// image for main menu item bullet (just filename)
$g_main_menu_item_bullet_img='arrow_org.gif';
//$g_main_menu_item_bullet_img='slide_gripper.gif';
下面是是否让每个产品有自己的颜色
// 'background'  -> standard behaviour for 1.6.x you can have a different
//                  background colour for every test project.
//
// 'none'        -> new behaviour no background color change
//
define('TL_TESTPROJECT_COLORING','background');
//define('TL_TESTPROJECT_COLORING','none');
 
 
 
下面是关于导出doc文件内容一些标识
// ----------------------------------------------------------------------------
/** [GENERATED DOCUMENTATION] */
// Constants used in printed documents.
define('TL_DOC_BASIC_CSS', TL_THEME_CSS_DIR . 'tl_doc_basic.css');
 
// Leave them empty if you would not to use.
define('TL_DOC_COMPANY', "Testlink Development Team [configure using TL_DOC_COMPANY]");
define('TL_DOC_COMPANY_LOGO',
       '<img alt="TestLink logo" title="configure using TL_DOC_COMPANY_LOGO" src="%BASE_HREF%' .
             TL_THEME_IMG_DIR . '/company_logo.png" />');
define('TL_DOC_COPYRIGHT', 'copyright - Testlink Development Team [configure using TL_DOC_COPYRIGHT]');
define('TL_DOC_CONFIDENT', 'this document is not confidential [configure using TL_DOC_CONFIDENT]');
 
 
 
上传文件是否压缩,压缩类型
/**
 * compression used within the repository
 * TL_REPOSITORY_COMPRESSIONTYPE_NONE => no compression
 * TL_REPOSITORY_COMPRESSIONTYPE_GZIP => gzip compression
 */
//$g_repositoryCompressionType = TL_REPOSITORY_COMPRESSIONTYPE_NONE;
$g_repositoryCompressionType = TL_REPOSITORY_COMPRESSIONTYPE_GZIP;
 

third_party\fckeditor\fckconfig.js  文本框菜单选项
 
/* 20070212 - Test Link configuration                                                  */
FCKConfig.ToolbarSets["TL_Medium"] = [
 ['Cut','Copy','Paste','Find','Replace','SelectAll','Link','Unlink','Anchor','Bold','Italic','Underline','OrderedList','UnorderedList','-','JustifyLeft','Image','Table','Rule'],
 '/',
 ['FontName','FontSize','TextColor','BGColor']
] ;
 
FCKConfig.ToolbarSets["TL_Medium_2"] = [
 ['Cut','Copy','Paste','Find','Replace','Link','Unlink','Bold','Italic','Underline','OrderedList','UnorderedList','-','Image','Table'],
 '/',
 ['FontName','FontSize','TextColor','BGColor']
] ;
/* ----------------------------------------------------------------------------------- */
全部功能
FCKConfig.ToolbarSets["TL_Medium_2"] = [  
  ['Source','DocProps','-','Save','NewPage','Preview','-','Templates'],  
  ['Cut','Copy','Paste','PasteText','PasteWord','-','Print','SpellCheck'],  
  ['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],  
  ['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'],  
  ['OrderedList','UnorderedList','-','Outdent','Indent'],  
  ['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],  
  ['Link','Unlink','Anchor'],  
  ['Image','Flash','Table','Rule','Smiley','SpecialChar','PageBreak','UniversalKey'],  
  ['Form','Checkbox','Radio','TextField','Textarea','Select','Button','ImageButton','HiddenField'],  
  '/',  
  ['Style','FontFormat','FontName','FontSize'],  
  ['TextColor','BGColor'],  
  ['About']  
  ]   ;  
/* ----------------------------------------------------------------------------------- */
默认模版和最简模版
FCKConfig.ToolbarSets["Default"] = [
 ['Source','DocProps','-','Save','NewPage','Preview','-','Templates'],
 ['Cut','Copy','Paste','PasteText','PasteWord','-','Print','SpellCheck'],
 ['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
 ['OrderedList','UnorderedList','-','Outdent','Indent'],
 ['TextColor','BGColor'],
 ['Form','Checkbox','Radio','TextField','Textarea','Select','Button','ImageButton','HiddenField'],
 ['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'],
 ['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],
 ['Image','Flash','Table','Rule','Smiley','SpecialChar','PageBreak'],
 ['Link','Unlink','Anchor'],
 ['Style','FontFormat','FontName','FontSize'],
  ['FitWindow','-','About']
] ;
 
FCKConfig.ToolbarSets["Basic"] = [
 ['Bold','Italic','-','OrderedList','UnorderedList','-','Link','Unlink','-','About']
] ;
 

上传文件使用的语言 文件同上 fckconfig.js
// The following value defines which File Browser connector and Quick Upload
// "uploader" to use. It is valid for the default implementaion and it is here
// just to make this configuration file cleaner.
// It is not possible to change this value using an external file or even
// inline when creating the editor instance. In that cases you must set the
// values of LinkBrowserURL, ImageBrowserURL and so on.
// Custom implementations should just ignore it.
var _FileBrowserLanguage = 'php' ; // asp | aspx | cfm | lasso | perl | php | py
var _QuickUploadLanguage = 'php' ; // asp | aspx | cfm | lasso | php
 
 
 
在config.inc.php下设置 文本框菜单类型 TL_Medium  TL_Medium_2(默认)
/** fckeditor Toolbar
 * modify which icons will be available in html edit pages
 * refer to fckeditor configuration file
 **/
$g_fckeditor_toolbar = "TL_Medium";
自定义字体
FCKConfig.FontNames  = '宋体;黑体;隶书;楷体_GB2312;Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana' ;
字体大小
FCKConfig.FontSizes  = '1/xx-small;2/x-small;3/small;4/medium;5/large;6/x-large;7/xx-large' ;
 

third_party\fckeditor\editor\filemanager\browser\default\connectors\php 下config.php开启上传功能
// SECURITY: You must explicitelly enable this "connector". (Set it to "true").
$Config['Enabled'] = true ; //开启
以下地址必须指向同一个目录
// Path to user files relative to the document root.
$Config['UserFilesPath'] = 'http://192.168.70.252/imtmp' ; //网址 二级目录
 
// Fill the following value it you prefer to specify the absolute path for the
// user files directory. Usefull if you are using a virtual directory, symbolic
// link or alias. Examples: 'C:\\MySite\\userfiles\\' or '/root/mysite/userfiles/'.
// Attention: The above 'UserFilesPath' must point to the same directory.
$Config['UserFilesAbsolutePath'] = 'C:\\www\\imtmp\\' ; 服务器路径
 

strings.txt 文件少几个翻译.1.7中没有需要覆盖
// gui/templates/inc_update.tpl
$TLS_info_failed_db_upd ="更新数据库失败!";
$TLS_info_failed_db_upd_details ="更新数据库失败!-- 详细信息:";
$TLS_invalid_query ="无效的查询";
$TLS_warning = "警告!!";
$TLS_was_success =" 已成功 ";
$TLS_Build = "构建";
$TLS_Keyword = "关键字";
$TLS_Priority = "优先级";
$TLS_Product = "产品";
$TLS_Requirement = "需求";
$TLS_Requirements = "需求";
$TLS_testcase = "测试用例";
$TLS_TestPlan = "测试计划";
$TLS_add = "增加";
$TLS_assigned = "被指派";
$TLS_delete = "删除";
$TLS_item = "项目";
$TLS_update = "更新";
$TLS_updated = "更新";
$TLS_user = "用户";
 
 
 
 
 
配置
 
配置文件
<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.
文件在cfg\const.inc.php里修改
 
$g_locales_date_format = array(
'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";
 

显示人员真实姓名和名字和姓的顺序
config.inc.php
// Display name and surename in all user lists
// $g_show_realname=TRUE; -> use the function format_username()
//                           to display user identification
//                           using $g_username_format
$g_show_realname = TRUE;//FALSE
 
// used by function format_username()
// example: user ux555, real name= John Cook
// '%first% %last%'          -> John Cook
// '%last%, %first%'          -> John Cook
// '%first% %last% %login%'    -> John Cook [ux555]
$g_username_format = '%last%%first%';
 
设定显示用户真实名字和顺序
$g_show_realname = TRUE;//FALSE
 
// used by function format_username()
// example: user ux555, real name= John Cook
// '%first% %last%'          -> John Cook
// '%last%, %first%'          -> John Cook
// '%first% %last% %login%'    -> John Cook [ux555]
$g_username_format = '%last%%first%  [%login%]';
 
上传图片文件夹路径设置
\testlink\third_party\fckeditor\editor\filemanager\browser\default\connectors\php\config.php
// Path to user files relative to the document root.
$Config['UserFilesPath'] = '/testlink/imtmp/' ;
 
// Fill the following value it you prefer to specify the absolute path for the
// user files directory. Usefull if you are using a virtual directory, symbolic
// link or alias. Examples: 'C:\\MySite\\userfiles\\' or '/root/mysite/userfiles/'.
// Attention: The above 'UserFilesPath' must point to the same directory.
$Config['UserFilesAbsolutePath'] = 'C:\\www\\testlink\\imtmp\\' ;
 
 
 
修改testlink角色英文名称为中文在数据库中 roles表中
 
 
 

读取mantis bug摘要乱码 关闭摘要显示 \lib\bugtracking\int_mantis.php
 

 /**if ($result)
  {
   $summary = $this->m_dbConnection->fetch_array($result);
 
   // 20070302 - BUGID - on MS-SQL fetch_array() does not returns numeric indexes, then
   //                    only choice is accessing my field name (IMHO better)
   if ($summary)
    $summary = $summary['summary'];
   else
    $summary = null;
  }
  return $summary;
  **/
  
  注释此行
 

chenxu
2008-10-20

没有评论: