1、使用TestLink管理软件测试过程使用TestLink管理软件测试过程: 使用TestLink管理软件功能测试过程本系列文章适用于需要为测试团队寻找测试过程管理解决方案的测试设计、测试管理人员。目前,开源理念在国内外越来越深入人心,开源软件大大推动了软件研发行业的快速发展。TestLink作为软件测试管理类开源软件中的佼佼者,在中小型的软件测试项目组中得到了普遍应用,项目组的测试效率得到了很大的提升。本文作为使用TestLink管理软件测试过程系列文章的第一部分,主要介绍如何使用该工具管理软件功能测试过程。首先介绍TestLink的作用、安装与配置,接着演示如何使用TestLink管理软件测
2、试过程。最后,向读者介绍TestLink提供的 XML-RPC接口特性,并演示如何使用Java语言通过调用XML-RPC接口对 TestLink进行定制开发。本系列文章的第二部分将会介绍如何使用TestLink管理软件自动化测试过程。TestLink 介绍TestLink 是开放源代码的基于 Web 的测试管理系统,它覆盖完整的测试工作过程,提供测试需求管理、测试用例管理、测试计划管理、测试执行与结果报表管理等功能。通过集成配置,TestLink 可以和主流的缺陷管理系统进行协同工作。该工具还对外提供了 XML-RPC 编程接口,用于定制开发。主要功能如下所示: 测试需求管理 用于收集、定义测
3、试需求。提供版本控制机制解决无法跟踪需求变更的问题。 测试用例管理 用于定义测试用例设计,不同模块的用例可以分别维护在不同的测试套件集合里。 测试计划管理 可以为测试计划指定被测软件所运行所在的平台信息和被测软件的测试构建信息。可以把测试用例执行工作分配给不同的测试工程师。 测试执行与结果报表管理 执行完毕测试,填写测试结果信息。支持上传结果文件,附加上缺陷编号信息。报表系统提供测试图表和执行矩阵信息。 良好的扩展特性 允许自定义字段;允许调用管理系统提供的 XML-RPC API 接口进行定制开发。TestLink 安装与配置TestLink 的最新版本为 1.9.5,建议使用稳定版本 1.
4、9.3。本部分将介绍如何在 Ubuntu 环境下搭建 TestLink 1.9.3 测试用例管理系统。本文使用的 Ubuntu 版本是 64 位服务器版 Ubuntu 12.04,Ubuntu 服务器的局域网内部 IP 地址为 172.16.27.225,服务器连接互联网,可以使用 apt-get 命令进行在线安装软件包。下面会分别介绍如何安装 Apache 应用服务器,MySQL 数据库,PHP 编程语言包,然后详细介绍如何安装、配置 TestLink。安装 Apache HTTP Server登录 Ubuntu 服务器,在终端中输入命令 sudo apt-get install apach
5、e2 进行安装。通过访问 http:/172.16.27.225,确认 Apache 安装成功。在 Ubuntu 上安装的 Apache,其默认的根目录为 /var/www,配置文件所在位置为 /etc/apache2/apache2.conf。其他的配置文件也都存放在目录 /etc/apache2 下。使用 vi 命令编辑 apache2.conf 文件,添加如下内容:清单 1. 编辑 apache2.conf 片段AddType application/x-httpd-php .php .htm .htmlAddDefaultCharset UTF-8ServerName 127.0.0.
6、1安装 MySQL 数据库在终端中使用命令 sudo apt-get install mysql-server 安装 MySQL 数据库,在安装过程中会提示为 root 超级用户设置密码。在 Ubuntu 环境下,停止、启动 MySQL 或 Apache 应用服务器进程、查看其进程的启动状态可以使用下面的命令:清单 2. Apache、MySQL 的常用命令sudo /etc/init.d/apache2 stop 或 service apache2 stopsudo /etc/init.d/apache2 start 或 service apache2 startsudo /etc/init
7、.d/apache2 status 或 service apache2 statussudo /etc/init.d/mysql stop 或 service mysql stopsudo /etc/init.d/ mysql start 或 service mysql startsudo /etc/init.d/ mysql status 或 service mysql status安装 PHP 语言包和 PHP 扩展模块使用下面的命令安装 PHP 语言相关的包,第一行命令安装 PHP 语言核心软件包,第二行命令安装需要的扩展模块。安装成功后,需要重启 Apache 服务器使安装生效。清单
8、3. 安装 php5 及其扩展sudo apt-get install php5sudo apt-get install libapache2-mod-php5 php5-mysql php5-pgsql php5-sybase php5-ldapTestLink 支持 MySQL、PostgreSQL 和微软的 SQL Server 数据库,可以根据测试团队选定的数据库类型选择相应的数据库扩展模块进行安装。如果 TestLink 需要配置 LADP 认证,则需要安装 php5-ldap 模块。对安装的 PHP 扩展模块解释如下。 libapache2-mod-php5 - Apache 2
9、模块(必须安装) php5-mysql - php5 的 MySQL 模块(数据库模块可根据需要进行安装) php5-pgsql - php5 的 PostgreSQL 模块 php5-sybase - php5 的 Sybase / MS SQL Server 模块 php5-gd - php5 的 GD 图像函数库模块(默认已安装) php5-ldap - php5 的 LDAP 模块(需要使用 LDAP 认证时安装)为使 TestLink 达到最佳性能,建议对 PHP 按如下配置进行优化。需要修改 PHP 配置文件 /etc/php5/apache2/php.ini 中的参数:1. se
10、ssion.gc_maxlifetime单位为秒。该参数指定的时间间隔之后,存储的数据会被标示为garbage,进而被垃圾回收进程清理掉。默认为 24 分钟(即 1440 秒)。TestLink 在进行安装之前会检查该参数,如果设置等于小于 10 分钟,TestLink 安装程序会强制用户去扩展该值。如果大 10 分钟,只给出警告信息。如果大于推荐的 30 分钟,安装程序校验为成功。建议设置为 session.gc_maxlifetime = 1860。1. max_execution_time每个 php 脚本最大执行时间,单位为秒,默认为 30s,TestLink 推荐设置为 120s。安
11、装 TestLink将 TestLink 安装包上传到服务器,使用清单 4 的命令脚本将 TestLink 软件包解压缩、复制到 /var/www 目录下,并重命名为 testlink。需要确保 testlink 的访问权限设置为 777,安装时会创建配置文件 config_db.inc.php,如果不设置正确的文件访问权限,会无法生成该数据库信息配置文件。清单 4. 部署 TestLinksudo tar zxvf testlink-1.9.3.tar.gzsudo cp -r testlink-1.9.3 /var/www/testlinksudo chmod R 777 testlink
12、在执行安装之前,需要确保目录 /var/www/testlink/gui/templates_c、/var/testlink/logs/ 和 /var/testlink/upload_area/ 已经存在且运行 Apache 服务器进程的用户对其拥有可写权限,使用命令进行权限的修改:chmod 666。TestLink 安装过程非常简单、清晰,只需要简单的几步配置:1. 访问 TestLink 在线安装在浏览器地址栏输入http:/172.16.27.225/testlink 进行访问,如果没有安装,程序会自动跳转到安装界面。2. 选择 New install,在进入的页面中接受许可证协议并继
13、续。3. 验证系统和配置需要满足的先决条件。如果没有致命的问题,可以点击 Continue 继续下一步的安装。通过前文的配置,全部的先决条件检查都可以通过。4. 定义 TestLink 使用的数据库信息TestLink 的数据保存在数据库里,安装过程中需要指定数据库连接信息。当配置完毕下述选项,点击 Process TestLink Setup 按钮开始配置数据库信息。o 数据库类型:支持三种数据库,本文使用 MySQL。o 数据库主机地址:数据库服务器机 IP 地址(如果数据库没有使用默认端口,需要添加端口信息),默认为 localhost,可以输入 172.16.27.225:3306。o
14、 数据库名称:TestLink 使用的数据库名称,默认为 testlink,如果不存在,会自动创建。o 数据库表前缀:可选,数据库表名前缀。o 数据库管理员用户:对于 MySQL,使用 root 用户即可。o 数据库管理员密码:输入安装 MySQL 时,预设的 root 用户的密码。TestLink 数据库用户:指定一个用户用于访问 TestLink 数据库,可以使用 root,或者新创建一个用户。o TestLink 数据库用户密码:TestLink 数据库用户的密码。5. 验证 TestLink 安装成功在浏览器地址栏输入 http:/172.16.27.225/testlink 进行访问
15、,如果安装成功会显示登录页面,默认的管理员账户为 admin、密码也为 admin。常用配置 config.ini.phpTestLink 提供的丰富的配置选项供用户对该系统进行定制,系统的主要配置文件为安装目录下的 config.inc.php。不建议直接修改该文件,建议把需要更改的部分复制到 custom_config.inc.php 内进行修改。下面简单介绍几个常用的配置: 在访问 TestLink 的时候,页面上有安全警告信息。可以自行按照 /var/testlink/logs/config_check.txt 里的提示信息进行修正(删除安装目录,更改 admin 默认密码,配置邮件
16、SMTP 信息等),或者把 config.inc.php 中检查模式修改 $tlCfg-config_check_warning_mode=SILENT;。 如果需要中文简体界面,需要修改默认语言为 $tlCfg-default_language = zh_CN; ,然后登录系统,进入个人账户页面,把语言 Locale 设置为中文简体。 如果需要调用 TestLink 提供 XML-RPC 接口,需要在配置文件中修改为 $tlCfg-api-enabled=TRUE; 。并需要在首页点击个人帐号链接,进入帐号设置页面,点击生成新的 API 访问密钥。回页首使用 TestLink 管理软件测试过
17、程管理测试项目测试项目(Test Project)是 TestLink 最基本的组成单元,用于管理测试资产。每个测试项目包括测试需求规约文档、测试规约文档、测试计划、执行和测试用户角色设置等。安装完毕 TestLink,第一次使用 admin 用户登录时,会跳转到创建新的测试项目页面。当存在测试项目时,可以在项目管理管理页面,创建新的测试项目,如图 1 所示。创建测试项目需要填写的信息包括: 项目名称必须填写,不能和已存在的项目重名; 前缀必须填写,不能和其他项目的前缀重名。前缀显示在测试用例名称之前; 项目描述可选项,可填写测试项目的介绍性文字、参考引用的项目文档等; 增强功能用于启用需求管
18、理、测试优先级、测试自动化和设备管理等。默认没有选中增强功能,建议全部勾选上; 可用性用于标示测试项目是否活动项目、是否公开。默认全选。测试项目处于活动状态时才能被使用,处于公开状态才能被其他有权限的用户使用,不公开时只能被创建它的用户使用。 从已有测试项目创建?如果已存在测试项目,可以复用存在的测试项目的项目数据。图 1. 创建新的测试项目如果需要创建更多的测试项目,可以通过首页的测试项目管理链接,然后在测试项目管理页面点击创建按钮进行创建。创建完毕,还可以对其进行编辑修改等操作。管理测试需求测试需求分析是软件测试流程中的重要活动之一,通过分析测试需求可以明确测试范围、掌握每一个功能的业务处
19、理流程。在 TestLink 中,可以使用测试需求规约管理功能维护测试需求分析的产出文档。被测软件产品根据功能模块进行划分,可以产生多个测试需求规约文档(Requirement Specification),每个测试需求规约文档又可以包含若干个测试需求文档。需求规约的创建很简单,在主页点击需求规约链接,进入相应的管理页面。单击页面左侧的需求规约导航树的根节点,然后在右侧页面点击创建按钮,进入需求规约创建页面。需要提供的信息为文档编号(在导航树上作为前缀显示),标题,范围和类型。需求规约文档的类型包括系统需求、软件需求和用户需求等三种。在树节点上点击刚刚创建的需求规约,然后点击创建测试需求按钮。
20、需要为测试需求提供的信息包含文档标识,标题,范围,文档状态、类型和需要的测试用例数目,详见图 2。对于需求规约和需求文档,TestLink 提供了丰富的操作,可以进行编辑、冻结、复制、创建新版本、导入导出等等。图 2. 创建新的需求文档管理测试用例在 TestLink 中,每个测试项目包含一个测试规约(Test Specification),每个测试规约包含若干测试套件(Test Suite)。每个测试套件包含若干测试用例(Test Case),每个用例包含若干测试步骤(Test Step)。测试工程师使用测试套件维护具有共性的测试用例集合。在 TestLink 中创建测试套件的时候,需要指定
21、标题、详细的描述信息,还可以为测试套件指定预先定义的关键字。测试用例是数据输入、先决条件、执行动作和期望结果的集合,用于验证程序满足特定的需求。在 TestLink 中创建测试用例,需要维护下面的信息: 测试用例标题创建完毕,用例标题显示在左侧导航树上; 摘要简单介绍测试用例,描述参考引用等; 前提条件描述在执行此用例前需要做的准备工作,测试数据准备等等; 测试方式分为手工测试与自动化测试; 测试用例等级根据用例的重要程度,分为低、中或高等级别; 关键字可以为测试用户指定预先定义的关键字,用于搜索功能。 创建完毕测试用例之后,还需要创建测试步骤。测试步骤是测试用例的核心组成部分,用例的测试步骤
22、包含执行信息,期望结果和执行类型等。还可以在测试用例和测试需求之前建立关联关系,用于统计测试需求覆盖情况。一些相关的文档可以作为附件上传到相应的测试套件和测试用例附件区。图 3. 完成的演示测试用例管理测试计划测试计划(Test Plan)是执行测试的基础,它包含计划名称、描述、需要执行的测试用例、测试构建、测试人员任务分配和优先级定义等。在测试计划管理页面,点击创建按钮进行创建,在创建页面为新测试计划提供下述信息: 测试计划名称用于标示测试计划; 计划描述描述部分可以添加项目计划和项目文档的链接,需要测试的功能特性列表,测试风险预警等; 从存在的计划复用创建默认为 No,当选择从其他计划基础
23、上创建时,被选计划的构建信息,测试用例信息,优先级定义信息、里程碑和用户角色等被复制过来。在测试补丁版本时,经常使用该功能创建测试计划; 是否活跃计划需要处于激活状态才能显示在主页和执行页面的测试计划下拉框里; 是否公开是否能被其他权限用户使用。 构建(Build)是软件的一个发布版本。迭代开发时,在最终的发布版本之前,会发布若干测试版本,每个测试版本都是一个构建。在 TestLink 中,测试执行基于构建和测试用例,在执行用例之前,需要创建构建。测试用例是测试计划的核心组成部分,在首页上提供了添加 / 删除测试用例到测试计划链接。可以选择测试用例及其具体版本号,然后点击增加选择的测试用例按钮
24、进行添加。除了添加用例,还可以选择将用例移出测试计划。测试计划还包含执行顺序的特性,可以为测试用例定义先后执行顺序。在测试用例拥有依赖关系时,使用顺序可以明确应该首先执行哪些用例。同一个测试计划也许需要测试团队的若干人来完成,可以把计划的用例分配给不同的测试人员分布执行测试。在首页点击指派执行用例链接,进入分配页面。选择测试套件或测试用例,分配给特定的测试员,进行保存。测试平台(Platform)也是 TestLink 的一个重要概念,它在测试项目级别定义,是执行测试用例运行所在的基础单元。平台可以是一个浏览器、操作系统、硬件设备、配置或者一系列的组合,比如 WebSphere+DB2+AIX
25、,WebLogic+Oracle+Solaris 可以分别定义两个平台。管理测试执行在完成上述准备工作之后,进入的是测试执行(Test Execution)阶段。在首页选择一个测试计划,然后点击执行测试,进入测试执行页面。左侧是用例导航树,可以设置过滤器显示关注的测试套件和用例。选择一个被执行的测试用例,在右侧显示选中的测试用例的测试结果设置信息。执行完毕一个测试用例,把通过、失败或阻塞等测试结果分配给相应的测试用例。除了测试结果,可以添加执行时的描述信息,或者上传附件。如果集成了缺陷管理系统,还可以关联缺陷信息。管理测试报表测试报表(Test Reports)用于展示测试计划的用例执行情况。
26、测试报表有以下几种格式: HTML 报表在 TestLink 页面展示 OpenOffice Writer 报表可以导出为 OpenOffice Writer 格式 OpenOffice Calc - 报表可以导出为 OpenOffice Calc 格式 MS Excel - 报表可以导出为 Microsoft Excel 格式 HTML Email 报表发送 HTML 邮件给当前用户。需要预先配置邮件设置。 Charts 基于 Flash 技术的图表XML-RPC 接口介绍TestLink 自从版本 1.8.0 起,开始提供 XML-RPC 接口。在界面上可以完成的操作,大都可以通过 API
27、 接口编程自动化的实现。通过调用这些接口,可以对 TestLink 进行定制,开发与其他研发平台进行集成的程序。用户通过实现自己的 XML-RPC 客户端,可以很方便地调用 TestLink 的接口方法,比如 createTestProject、 uploadAttachment、 getTestProjectByName 等等。在默认情况下,XML-RPC API 处于关闭状态,需要修改配置文件来启用 XML-RPC API。在使用 XML-RPC 接口之前,XML-RPC 客户端需要获取一个访问 TestLink 的密钥。登录到 TestLink 系统,在个人帐号页面点击生成新的密钥按钮,
28、即可获取需要的密钥值,见图 4。图 4. 生成密钥接下来,演示一下如何调用 TestLink 的编程接口。TestLink 软件安装目录 testlinklibapisample_clientsjava 中提供了基于 Java 的 Apache XML-RPC 客户端实现的例子。把它导入到 Eclipse 工作区,建立 Eclipse Java 工程 Testlink API Sample Java Client。重新配置一下构建路径,导入需要的第三方 Jar 文件,确保没有编译问题。可以在工程的源代码包 org.testlink.api.client.sample 下面发现两个 Java 文
29、件。一个是 clientAddTestCaseToTestPlan.java,用于演示如何通过接口调用把测试用例添加到测试计划中,需要提供测试项目编码,测试计划编码,测试用例的外部编码及测试用例的版本号作为参数。另外一个是 TestlinkAPIXMLRPCClient.java,用于演示如何通过接口调用修改测试执行的结果状态,需要提供测试用例编码、测试计划编码和执行结果状态作为参数。在编译、运行这两个 Java 文件之前,使用实际数值替换 Java 文件中的密钥值 DEV_KEY 及 TestLink 站点的 SERVER_URL,如清单 5 所示:清单 5. 修改密钥和 URL/ 替换使用
30、你的密钥public static final String DEV_KEY = 8f86a2a64b634aec65eeab1511646238;/ 替换使用你的 Server URLpublic static final String SERVER_URL = http:/localhost/testlink/lib/api/xmlrpc.php;运行那些 Java 文件,可以看到执行成功的信息。除了这些例子,可以在文件 testlinklibapixmlrpc.class.php 的 _construct() 函数中查询到更多的接口。除了如上所示的直接编写 XML-RPC 客户端代码外,
31、还可以使用 SourceForge 提供的开源 Java 项目 TestLink Java API。TestLink Java API 是独立于 Testlink 之外单独维护的项目,但版本号和 TestLink 保持一致。在 TestLink 发布新版本之后,比如对应版本 TestLink 1.9.4,TestLink Java API 会发布版本 1.9.4-1,其中末位数字 1 表示内部修订版本号,用于控制缺陷修改和功能提升。访问 TestLink Java API 网站,下载 TestLink Java API Jar 文件及其依赖的第三方类库,把它们添加到构建路径后,就可以很方便的编写自己的客户端代码调用 TestLink 接口。见清单 6,实现了使用 TestLink Java API 创建项目。清单 6. 使用 TestLink Java API 创建项目的例子String url = http:/:/testlink/lib/api/xmlrpc.php; String devKey = key; TestLinkAPI api = null; TestProject project = null; URL testlinkURL = null; try testlinkURL = new URL(url); api = new TestLin
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1