无界面应用功能自动化测试工具Peach-软件功能测试自动化实战教程(7)

发表于:2015-4-08 08:53

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:周焕来、贾海涛    来源:51Testing软件测试网原创

(51Testing软件测试网获得作者授权连载本书部分章节。任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。)
  8.Run元素用来定义要运行哪些测试,包含一个或多个Test,另外还可以通过Logger元素配置日志来捕获运行结果。当然,Logger 也是可选的。
  <Run name="DefaultRun">
  <Test ref="TheTest" />
  <Logger class="logger.Filesystem">
  <Param name="path" value="C:\peach\logtest" />
  </Logger>
  </Run>
  上例表示程序运行"TheTest"这个测试,并且把运行日志记录到C:\peach\logtest 目录下。
  11.4.2  数据间的依存关系的描述
  在实际的测试过程中,并不是所有的数据都是可以随意产生的,比如数据校验值、数据长度等字段都是要进行计算才能得到。如果自己去计算这些数据,将是一个费事、烦琐的工作。在Peach的Peach Pit文件中,可以用Relation元素来表示数据长度、数据个数以及数据偏移等信息。
  其格式为:
  <Relation type="size" of="Data" />
  <Relation type="count" of="Data" />
  <Relation type="offset" of="Data" />
  同样,数据校验值也可以通过Fixup元素来表示。Fixup支持的校验类型包括CRC32、MD5、SHA1、SHA256、EthernetChecksum、SspiAuthentication等,具体细节可以参考Peach 的官方文档。
  Fixup的格式为:
  <Fixup class="FixupClass">
  <Param name="ref" value="Data"/>
  </Fixup>
  其中FixupClass可以为checksums.Crc32Fixup、checksums.SHA256Fixup 等。下面看一个示例,假定有如下的一个数据模型,如表11-2所示。
  可以看出,这里有两个数据需要定义依存关系。第一个是首4个字节的数据,表示Data数据段的长度,可以用<Relation type="size"of="Data"/>这样的依存关系表述。第二个是最后4个字节的数据,表示Type和Data两个数据段的CRC校验,可以用<Fixup class="checksums.Crc32Fixup"/>这样的依存关系表述。考虑到需要将Type和Data这两个数据段合并到一起作为Fixup的参数,可以增加一个名为"TypeAndData"的Block,将Type和Data放到该Block里,这样便可以用TypeAndData作为Fixup的参数。于是表11-2的数据模型的DataModel可以定义如下:
  <DataModel name="HelloData">
  <Number name="Length" size="32">
  <Relation type="size" of="Data"/>
  </Number>
  <Block name="TypeAndData">
  <String name="Type" size="32"/>
  <Blob name="Data"/>
  </Block>
  <Number name="CRC" size="32">
  <Fixup class="checksums.Crc32Fixup">
  <Param name="ref" value="TypeAndData"/>
  </Fixup>
  </Number>
  </DataModel>
  实际的使用过程中,Peach pit中的数据依存关系可能更加复杂,用户可以根据实际的需求自行编写描述信息,必要时可以在Peach框架中添加新的数据类型和校验算法,完成数据定义需求。
本文选自《软件功能测试自动化实战教程》,本站经作者的授权。
版权声明:51Testing软件测试网获作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
相关文章
Web Service测试-软件功能测试自动化实战教程(6)
33/3<123
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号