51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1764|回复: 0
打印 上一主题 下一主题

[讨论] TFS2010中管理测试用例等测试对象的那些表

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-4-13 14:50:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
到目前为止,我已经读完了《.net自动化测试之道》中的API测试章节,虽然它存储测试用例的方式一般用不到,
测试用例数量可能会很庞大、步骤也不会那么简单,用文本文件存储是很不现实的。但是它的整个测试设计思
路是可取的,它的技巧也值得借鉴。测试管理工具一般都把测试用例等其他测试相关对象存储在数据库中,将
测试用例输入以及测试结果显示都图形界面化。用过vs2010的测试功能的童鞋应该会有些体会。

下面分析一下TFS2010中管理测试对象的那些表,大概了解一下它的设计思路。

微软vs2010的测试功能还是很强大的,它有个microsoft 测试管理器2010客户端随vs2010一起安装, microsoft
测试管理器2010管理我们的测试对象(测试计划、测试套件、测试用例等),这些对象都是存储在TFS2010
服务器端的数据库中。在TFS2010中每创建一个collection就会创建一个Tfs_collection名称的数据库,安装TFS2
010的时候会有个默认的collection,对应数据库Tfs_DefaultCollection。Collection数据库中有管理测试对象的相关表。

来看看这几组表:

测试计划:tbl_Plan

测试套件:tbl_Suite、tbl_SuiteConfiguration(存储测试套件和配置的关系)、tbl_SuiteEntry(存储测试用例
和测试套件的关系)

测试用例:WorkItemsAre、WorkItemLongTexts等

其他:(如测试设置、测试运行、测试结果等):以tbl_Test为前缀的那些

当创建一个测试计划的时候就在tbl_Plan中插入一条记录,存储测试计划的相关内容,套件的内容存储在tbl_S
uite中,包括它对应的测试计划的id。

测试用例特殊一点,它是被作为TFS的一个工作项处理的。

一般一个测试用例,它包括的元素有用例ID、标题、操作步骤、参数、预期结果等,来看看vs2010测试工具
中的测试用例(如图)



呃,内容好多噢,对于这些内容的存储,微软的处理方式不是相同的,有些是表的一个字段(而且会是不同
的表),如测试用例标题在WorkItemsAre表中,摘要在WorkItemLongTexts中,有的用了单独的表,如附件
(存储在WorkItemFiles表中),大部分是TFS的field,同时是表的字段,如测试步骤、预期结果、参数、关联
的自动化测试的相关内容等。

WorkItemAre是一个宽宽的表,它的大部分字段是TFS中的field。大家可以查看Fields表看看各FldID代表什么,
如FldID为10025的是自动测试名称。10017表示测试用例步骤。我们知道测试用例步骤、预期结果、用例的
参数等可能会很多,因此存储的时候占位也长,微软是将这些作为长文本存储在WorkItemsLongTexts表中
(而且是XML格式的),如上图中的用例参数,它存储在WorkItemsLongTexts表中的words字段中,内容如下:

  1. <?xml version="1.0" encoding="utf-16"?>
  2. <NewDataSet>
  3.   <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
  4.     <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:Locale="">
  5.       <xs:complexType>
  6.         <xs:choice minOccurs="0" maxOccurs="unbounded">
  7.           <xs:element name="Table1">
  8.             <xs:complexType>
  9.               <xs:sequence>
  10.                 <xs:element name="用例的参数" type="xs:string" minOccurs="0" />
  11.               </xs:sequence>
  12.             </xs:complexType>
  13.           </xs:element>
  14.         </xs:choice>
  15.       </xs:complexType>
  16.     </xs:element>
  17.   </xs:schema>
  18.   <Table1>
  19.     <用例的参数>a</用例的参数>
  20.   </Table1>
  21.   <Table1>
  22.     <用例的参数>本帮菜</用例的参数>
  23.   </Table1>
  24. </NewDataSet>
复制代码

并且测试用例步骤、预期输出、参数等这些field每修改一次会在这个表中插入一条记录。测试运行当然会有测
试结果,TFS也有相关的表存储测试结果(tbl_Test前缀的)。当然,这个工具很强大,他的架构设计固然也
不那么简单,我在这里只是简单了解以帮助设计自己的测试框架,而且与测试相关的表也不止这些,有兴趣
可以自己去了解。



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-6 05:28 , Processed in 0.063522 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表