一、什么是TestLink
公司的测试组有在使用TestLink,所以我来了解一下TestLink是做什么的
testlink是一个免费开源的测试管理软件
基于WEB的测试用例管理系统,主要功能是:测试项目管理、产品需求管理、测试用例管理、测试计划管理、测试用例的创建、管理和执行,并且还提供了统计功能。
官方网站 http://www.testlink.org.cn/
TestLink优劣分析
(1)以测试项目为核心
(2)建立测试项目与产品需求的对应关系
(3)建立测试计划与测试用例的对应关系
(4)用例可以重复执行
(5)可以记录用例执行所用的预估时间和实际时间,便于提高测试效率
(6)建立用例与BUG的对应关系
(7)以产品需求通过测试为导向
(8)结果统计直观
(9)以角色的形式灵活管理测试团队
(10)可以根据需要对重要对象设置自定义字段
Testlink不足
(1)产品需求与redmine中的需求有重复
(2)测试用例的执行必须关联测试计划,而测试计划的定义有点简单
(3)与非测试人员相关性不高,比如开发人员不能查看BUG对应的用例信息
(4)缺乏对测试用例覆盖不到的地方的扩展,不能管理探索性测试过程
(5)不能建立测试用例与自动化测试脚本的对应关系,无法管理自动化测试脚本
(6)要一定的培训成本:系统的使用、测试用例的设计
结论
在牺牲一定工作效率的情况下能够提升测试团队的专业性水平和素养,对实际测试的能力作用有限,建议使用
测试组-测试流程管理:
目的:是完善测试整个流程的管理和执行,以及产出物的规范化
流程:立项-产品需求-测试计划-测试用例-bug关联-测试结果
采用主要原因:
1,TestLink可以有效的管理测试的整个流程,因为测试是跟随着软件的整个生命周期直至结束,所以采用TestLink来管理测试流程。
2,TestLink可以和Redmine的项目进行关联,testllink执行用例时发现的问题可以记录到redmine中,所以选择TestLink可以完善Redmine项目流程管理系统。
Windows部署
step1:安装前准备
XAMPP安装包:https://www.apachefriends.org/zh_cn/download.html 选择相应环境的版本,我下载的是基于Windows
TestLink安装包 :http://www.testlink.org/ 下载最新的
step2:安装TestLink、XAMPP
1.首先安装XAMPP,直接默认安装即可;下载安装好,进入到启动页面;在Apache、Mysql 点击start 启动
2.把TestLink解压到XAMPP安装目录htdocs,并且根目录名称为testlink,如下图:
3.设置数据库root密码并新建testlink数据库
mysql -uroot
> ALTER USER root@localhost IDENTIFIED BY '你的密码';
> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '你的密码' WITH GRANT OPTION; //允许远程访问权限:
> create database testlink character set utf8;
> flush privileges;
4.进入到安装页面
浏览器中输入http://localhost/testlink
5.点击下面的按钮New installation
6.点击上图的下一步,接下来如果报错的话。修改Testlink 目录下的config.inc.php文件
(1)$tlCfg->log_path = '/var/testlink/logs/';
替换为 $tlCfg->log_path = TL_ABS_PATH . 'logs' . DIRECTORY_SEPARATOR ;
(2)$g_repositoryPath = '/var/testlink/upload_area/';
替换为 $g_repositoryPath = TL_ABS_PATH . "upload_area" . DIRECTORY_SEPARATOR;
修改完成后刷新,点击下一步。
如果遇到报错 checking max.execution time
修改xampp中php安装目录中php.ini中的max_execution_time时间,修改为max_execution_time=120,大概在372行
7.如下图,输入数据库管理员和访问testlink数据库的账号密码,没有另外设置的话,统一用管理员账号就行了账户: root 密码:之前设置的密码
8.然后点击 Process TestLink 按钮,开始安装。安装成功后如下图所示
9.进入“xampphtdocstestlink”目录下,把install目录删除;
10. 进入testlink系统
默认账户和密码都是 admin
进入系统登陆页面如果有显示问题:
解决办法:
编辑文件:testlinkthird_partyphpmailerPHPMailerAutoload.php
第45行修改为:function spl_autoload_register($classname)
再刷新页面后,就正常了
Linux部署
1、检查是否已安装LAMP,若已安装,删除四个安装包
rpm -qa lamp
2、安装apache
yum install httpd
修改配置信息
vim /etc/httpd/conf/httpd.conf
(1)把里面的 AllowOverride None 全部修改为 AllowOverride All
(2)顺便在 DirectoryIndex index.html 后面加上 index.htm index.php index.shtm
(3)直接修改/etc/httpd/conf/httpd.conf中修改DocumentRoot和Directory处的路径、重启即可
重启apache服务
systemctl restart httpd.service #重启apache
3、安装PHP
yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel
重启apache服务
systemctl restart httpd.service
写一个php文件在浏览器中运行一下:
vi /var/www/html/info.php
content:
浏览器输入:http://IP/info.php
4、安装MySQL
(1)安装
yum -y install mariadb*
(2)开启MySQL服务
systemctl start mariadb.service
(3)设置开机启动MySQL服务
systemctl enable mariadb.service
(4)设置root账号的密码
mysql_secure_installation
然后会出现一串东西,可以仔细读一下,如果你懒得读,就在提示出来的时候,按Enter就好了,让你设置密码的时候,你就输入你想要的密码就行,然后继续在让你选择y/n是,Enter就好了;当一切结束的时候,你可以输入mysql -uroot -p的方式,验证一下
注:源码无法编译情况需要执行命令:yum install mod_php -y
5、将PHP和MySQL关联起来
yum search php,选择你需要的安装:yum -y install php-mysql
6、安装testlink
(1)linux下操作
tar -zxvf testlink-1.9.14.tar.gz
mkdir /var/testlink/logs
mkdir /var/testlink/upload_area
chmod 777 /var/testlink/logs
(2)浏览器配置操作
输入IP进行访问testlink默认页面:http://ip:port/testlink/
报错解决方案
- 错误描述
Fatal error: Uncaught Error: Cannot use string offset as an array in C:xampphtdocstestlinklibexecuteexecSetResults.php:1534 Stack trace: #0 C:xampphtdocstestlinklibexecuteexecSetResults.php(94): processTestCase(NULL, Object(stdClass), Object(stdClass), Object(stdClass), Array, Object(tree), Object(testcase), Object(tlAttachmentRepository)) #1 {main} thrown in /www/testlink/lib/execute/execSetResults.php on line 1533
解决方案
首先:打开execSetResults.php ,定位到1511 附近,找到$guiObj->design_time_cfields=''
再则:把$guiObj->design_time_cfields=''改为$guiObj->design_time_cfields=[]
2.错误描述
页面显示不全,报错:
“Deprecated : ...... phpmailer/PHPMailerAutoload.php on line 45”
解决方案:
将function__autoload($classname)修改为:
functionspl_autoload_register($classname)
3.错误描述
执行结果显示报错,报错信息:
Fatal error: Uncaught Error: Call to undefined function bcmul() in /www/testlink/lib/results/resultsByTesterPerBuild.php:295 Stack trace: #0 /www/testlink/lib/results/resultsByTesterPerBuild.php(81): minutes2HHMMSS(0) #1 {main} thrown in /www/testlink/lib/results/resultsByTesterPerBuild.php on line 295
解决方案:
缺少php-bcmath扩展
# cd /usr/local/src/php7.2/ext/bcmath
# /usr/locla/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config
# make && make install
# vi /usr/local/php/lib/php.ini
添加extension=bcmath.so
保存后重启php服务即可解决
4.错误描述
测试结果flat页面报错,报错信息:
Fatal error: 'break' not in the 'loop' or 'switch' context in /www/testlink/third_party/codeplex/PHPExcel/Calculation/Functions.php on line 570
解决方案:
} elseif(is_array($value)) {
return 64;
报道PHP文件,删除570行处的break;
5.错误描述
安装页面报错:
Failed! LDAP library not enabled. LDAP authentication cannot be used. (default internal authentication will works).
解决方案:
进入php安装文件下
# cd /usr/local/src/php7.2/ext/ldap
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config --with-ldap
6.报错信息:
configure: error: Cannot find ldap.h
解决办法:
# yum install -y openldap openldap-devel
7.报错信息:
configure: error: Cannot find ldap libraries in /usr/lib
解决办法:
# cp -frp /usr/lib64/libldap* /usr/lib/
# ./configure --with-php-config=/usr/local/php/bin/php-config --with-ldap
安装完成后修改php配置文件
# vi /usr/local/php/lib/php.ini
将extension=ldap.so前的分号去掉,保存退出 ,或添加该配置