testlink同Bugfree的整合
要关注两个目录下的文件:
1.lib\bugtracking\
2.cfg\
1、修改 lib/bugtracking/int_bugtracking.php,找到名为“BUGZILLA”、“JIRA”等bugtracking interfaces列表,在其中加入"BUGFREE"即可。
如:
// Add new bugtracking interfaces here
$btslist = array('BUGFREE','BUGZILLA','MANTIS','JIRA','TRACKPLUS','FOGBUGZ');
2、增加文件:lib/bugtracking/int_bugfree.php、cfg/bugfree.cfg.php
3、修改 config.inc.php,将define(’TL_INTERFACE_BUGS’, ‘NO’);改为define(’TL_INTERFACE_BUGS’, ‘BUGFREE’);
另外,修改
$g_bugInterfaceOn = true;
$g_bugInterface ='BUGFREE';
这样就将TL与BugFree整合在一起了。在执行测试用例的时候,会发现Testlink界面中多了一个问题报告的部分
整合后遇到的3个问题:
1:Testlink的首页出现“Fatal Error:call to a member function connect() on a non-object in ……lib\functions\configCheck.php on line 350”
解决:你可以直接将lib\functions\configCheck.php中的checkForBTSConnection方法中的内容注释掉。
2:Exectue中已经看到小虫图标,但是点击后出现“……lib\execute\bugAdd.php on line 42”
解决:直接定位到bugAdd.php中的$g_bugInterface->getEnterBugURL()语句,看是不是没有创建$g_bugInterface?是的,你需要$g_bugInterface = new bugtrackingInterface();
3:点击小虫图标,定位到bugfree添加缺陷并登记缺陷号后返回执行页面,报错“DB Access Error - debug_print_backtrace() OUTPUT START”
解决:仔细看了错误提示,发现testlink的sql语句是从bugfree.bugfree_buginfo 表中select status,id等,才发现,bugfree_buginfo这个表根本是不存在的,但是有bf_bug_info表,于是到testlink\lib\bugtracking\int_bugfree.php下把bugfree_buginfo全部替换成bf_bug_info,再次运行,还有有错。
到mysql数据库中查看select语句执行结果,提示:Unknown column 'BugID' in 'where clause'。发现原来'BugID'、'BugTitle'、'BugStatus'已经改成了id、title、bug_status ,所以下次配置的时候要根据实际的数据库来配置。修改后再次查看,正常了。
要关注两个目录下的文件:
1.lib\bugtracking\
2.cfg\
1、修改 lib/bugtracking/int_bugtracking.php,找到名为“BUGZILLA”、“JIRA”等bugtracking interfaces列表,在其中加入"BUGFREE"即可。
如:
// Add new bugtracking interfaces here
$btslist = array('BUGFREE','BUGZILLA','MANTIS','JIRA','TRACKPLUS','FOGBUGZ');
2、增加文件:lib/bugtracking/int_bugfree.php、cfg/bugfree.cfg.php
3、修改 config.inc.php,将define(’TL_INTERFACE_BUGS’, ‘NO’);改为define(’TL_INTERFACE_BUGS’, ‘BUGFREE’);
另外,修改
$g_bugInterfaceOn = true;
$g_bugInterface ='BUGFREE';
这样就将TL与BugFree整合在一起了。在执行测试用例的时候,会发现Testlink界面中多了一个问题报告的部分
整合后遇到的3个问题:
1:Testlink的首页出现“Fatal Error:call to a member function connect() on a non-object in ……lib\functions\configCheck.php on line 350”
解决:你可以直接将lib\functions\configCheck.php中的checkForBTSConnection方法中的内容注释掉。
2:Exectue中已经看到小虫图标,但是点击后出现“……lib\execute\bugAdd.php on line 42”
解决:直接定位到bugAdd.php中的$g_bugInterface->getEnterBugURL()语句,看是不是没有创建$g_bugInterface?是的,你需要$g_bugInterface = new bugtrackingInterface();
3:点击小虫图标,定位到bugfree添加缺陷并登记缺陷号后返回执行页面,报错“DB Access Error - debug_print_backtrace() OUTPUT START”
解决:仔细看了错误提示,发现testlink的sql语句是从bugfree.bugfree_buginfo 表中select status,id等,才发现,bugfree_buginfo这个表根本是不存在的,但是有bf_bug_info表,于是到testlink\lib\bugtracking\int_bugfree.php下把bugfree_buginfo全部替换成bf_bug_info,再次运行,还有有错。
到mysql数据库中查看select语句执行结果,提示:Unknown column 'BugID' in 'where clause'。发现原来'BugID'、'BugTitle'、'BugStatus'已经改成了id、title、bug_status ,所以下次配置的时候要根据实际的数据库来配置。修改后再次查看,正常了。