使用 IBM Rational Tester for SOA Quality 将动态数据添加到Web 服务测试中

发表于:2007-10-25来源:作者:点击数: 标签:soarationaltester
了解如何在使用数据池、置换和 Web 服务测试中的字段引用,以及验证点。 IBM Rational Tester for SOA Quality 会自动建立、执行和分析服务和面向服务体系结构 (SOA) 应用程序的 功能测试 。在这篇文章中,您将会学到如何在 IBM Rational Tester 中为 SOA Qu
了解如何在使用数据池、置换和 Web 服务测试中的字段引用,以及验证点。

IBM® Rational® Tester for SOA Quality 会自动建立、执行和分析服务和面向服务体系结构 (SOA) 应用程序的功能测试。在这篇文章中,您将会学到如何在 IBM Rational Tester 中为 SOA Quality 使用动态数据。 动态数据 表示建立基于数据的测试和动态确认点。您可以下载 IBM Rational Tester for SOA Quality 免费试用版

关于软件

这篇文章是基于 IBM® Rational® Performance Tester Version 7.0.0,IBM Rational Tester for SOA Quality Version 7.0.0 Open Beta,Microsoft® Windows 2000 Professional SP2,以及最初可用版本的 Google Web API 软件环境。

IBM Rational Tester for SOA Quality 是 IBM Rational Performance Tester 应用程序的一个扩展。如果您对 Rational Tester for SOA Quality 或者 Rational Performance Tester不够熟悉的话,那么我建议您先阅读一些这篇文章最后资源部分提供的一些文章。

在学习的过程中,您将会对 Google Web API (查看:资源的获得产品和技术部分的关于 WDSL 的链接)进行 Web 服务测试。而且您会为 doSpellingSuggestion 执行一个测试。在这个测试中,您需要通过 API 主键和阶段的测试,这里我给您提供一个建议:带 IBM Rational Performance Tester 返回值的 IBM Rational Performance Tester(如图1所示)。


图1:doSpellingSuggestion 测试用例的初始化
Figure 1. Initial test case setup for doSpellingSuggestion

这个操作同时还建立了一个比对确认点,它用来寻找从 IBM Rational Performance Tester 收到的回应。在您学习如何添加域资源和置换详细内容之前,希望您回顾一下在 Rational Tester for SOA Quality 中数据池的相关知识。如果您对数据池非常熟悉,那么您可以选择跳过此章节。

数据池 101

在执行过程中,一个测试会使用一个带可用测试数据的数据池来取代已记录测试的值。在这个章节中,您会学习到如何为您的测试建立一个数据池,以及数据池是如何构造的。

建立一个数据池

建立数据池的方法有很多。最常用的方法是使用文件菜单建立数据池:

  1. 依次点击 File > New > Datapool
  2. New Datapool 窗口中,点击您需要添加数据池的项目,然后在 Name 栏中输入数据池的名称(如图2所示),然后点击 Next 按钮

图2:定义一个新数据池的名称和路径
Figure 2. Defining the name and location of a new datapool

  1. (可选)在描述数据池窗口中,为数据池添加一个描述,并为它选择 变量和记录。您不必太关心这些值,因为您可以在以后任意添加这些变量和记录。纵列显示的是变量(如图3所示)。在这个测试中,我们需要两个变量:一个是请求值,另一个是预期返回值
  2. 设置变量的数量,然后点击 Finish按钮。

图3:描述数据池内容和结构
Figure 3. Describing the datapool content and structure

现在您会在 Test Navigator 中,您的项目下看到一个叫 doSpellingSuggestion 的数据池。除此之外,这个空数据池应该处于打开并可以编辑状态。

数据池和等价类

首先您需要了解的概念是等价类。在测试中,通常的做法是将输入和输出分为两个等价类。一个等价类中包含的值通常根据所期待的结果被认为是等价物。我们看一个经典的测试问题,例如三角形问题:

"三角形程序从一个穿孔卡片中读取三个数据,并将它们作为三角形的三个边。然后程序会判断三角形是否为不等边三角形,等边三角形或者等腰三角形。"

当设计这个测试时,您会瞬间看到三类输入输出数据:不等边三角形,等边三角形或者等腰三角形。当然还可能有其它情况,例如非法值,过大或者过小的三角形,但是您都可以非常迅速的开始为输入值和相应的输出结果分类。

从输入类设置的任何值,都会产生出相同的结果;因此它们是相等的。例如,三角形的三条边分别是2,2,2和3,3,3,它们都是等边三角形。IBM Rational 通过允许用户定义包含一定范围数值的数据池子集来实现这个概念,当使用到一个测试时,产生出相等的通过或者失败结果。一个数据池必须包含一个等价类。

如果您查看您刚刚建立的数据池,您使用的是数据池的默认设置,如图4所示。


图4:doSpellingSuggestion 数据池中的等价类标签
Figure 4. Equivalence class tab in the doSpellingSuggestion datapool

如果您点击 Overview 标签,您会看到 Equivalence Classes 章节,在这里您可以为您的测试定义需要的等价类。如果您双击已经存在的等价类,您可以重命名它。将它重命名为 phrasesWithSuggestions。然后建立另一个等价类,命名为 phrasesWithoutSuggestions。(查看 图5。)


图5:添加第二个等价类
Figure 5. Adding a second equivalence class

变量和记录

下一步,您需要熟悉变量(纵列)和记录(横行)。

  • 一个变量是一个明明的数据列。数据存在于列之中,它的类型由被测试的应用程序决定。
  • 一个记录是数据池中的一个行数据。行和等价类相关,从第0行开始。

您需要为数据池重新命名变量,您可以点击列并输入新名称。(您还可以在 Overview 标签上完成这个操作,这和您重命名等价类一样。)通常情况下,它通过使用相关元素的名称来命名变量。如果这样不可行,您可以选择其它一些有意义的名称,这样可以让今后看到您的测试的人能够从这个名称得到一些提示,让他们知道您在做什么。重点要记住:不要将列的名称命名为 Variable1。(查看图6


图6:重命名数据池中的变量
Figure 6. Renaming the variables in a datapool

注意,当您改变一个等价类的变量时,这个变化会串联影响到其他等价类。

数据池编辑器是一个虚框,类似于电子表格。右键点击这个虚框,打开弹出式选单(图7),用它来添加或者维护已有的数据池构件元素。在其中直接输入数据即可将它添加到数据池。


图7:数据池结构和数据的操作
Figure 7. Manipulating the datapool structure and data

在继续阅读之前,请先将下列数据添加到您的等价类中 表1


表1:doSpellingSuggestion 等价类的数据值
等价类 术语 返回
phrasesWithSuggestions IBM Rational Perforlmance Tester IBM Rational Performance Tester
phrasesWithSuggestions IMB Rational Performance Tester IBM Rational Performance Tester
phrasesWithSuggestions IBM Ratanal Porformance Testar IBM Rational Performance Tester
phrasesWithoutSuggestions IBM Rational Functional Tester (空白)
phrasesWithoutSuggestions IBM Rational Performance Tester (空白)
phrasesWithoutSuggestions demeloperMorks (空白)

现在您已经设置好您的数据池了,拥有了以上数据之后,让我们学习如何在 Rational Tester for SOA Quality 中执行数据驱动的测试。

置换

我们需要了解的第一个动态数据类型是 置换。它可以将测试中的一个特定值和一个特定的数据池列关联起来。

原文转自:http://www.ltesting.net