在本章中,我们将讨论如何将数据导入测试基础设施。我们将使用 Parasoft SOAtest 和 Virtualize 附带的一个 Parabank 示例应用程序实例,并将代理添加到应用程序配置中,以便我们能够将数据捕获到数据资源库中。
章节目录:
我们将首先将 ParasoftJDBC 驱动程序部署到 Parabank 级别,并配置到 SOAtest/Virtualizer 服务器的连接。Parasoft JDBC 驱动程序是一种特殊的 JDBC 驱动程序,它可以充当应用程序与其常规 JDBC 驱动程序的中间人。请参阅关于 Parasoft JDBC 驱动程序了解更多。
打开 ParaBank/src/jdbc.properties 文件并指定以下设置:
jdbc.driverClassName=com.parasoft.xtest.jdbc.virt.driver.JDBCProxyDriver jdbc.url=jdbc:parasoft:proxydriver:org.hsqldb.jdbcDriver:@jdbc:hsqldb:hsql://localhost/parabank jdbc.username=sa jdbc.password= |
在参数选项卡下,将下列 Parasoft JDBC 驱动程序标志添加到 VM 参数部分已经列出的内容中:
-Dparasoft.virtualize.server.url=http://localhost:9080 -Dparasoft.virtualize.group.id=parabank -Dparasoft.virtualize.driver.register.jdbcproxydriver.in.drivermanager=true -Dparasoft.virtualize.driver.proxy.direct=true |
如果您正在将本教程应用于自己的项目,则文档中包含了关于如何将 Parasoft JDBC 驱动程序部署到多个应用程序的说明。请参阅使用 Parasoft JDBC 驱动程序。
在此步骤中,我们将录制一个数据库查询并使用它创建一个虚拟资产。录制数据库查询不会向数据资源库添加数据。为了捕获数据,必须执行一个操作,例如向连接到资源库的虚拟资产发送一条消息。您可以在 Virtualize 桌面端或 CTP 中执行此步骤。在本教程中,我们将使用 CTP,这需要一些额外的配置。
我们将在 CTP 中创建一个新的系统、环境和数据库组件。系统是开发基础结构的表示。系统包含一个或多个环境表示,例如“回归测试”、“集成测试”等等。另外,可以创建环境的几个实例来满足您的测试需求。
系统是一个由多个组件组成的面板,例如数据库、服务器、客户端等。每个组件的实例都包含在特定环境中使用的配置。一个实际的系统会包含几个组件,但我们将只使用数据库组件来说明工作流程:
您现在应该有一个名为 Parabank 的系统,其由一个单一数据库组成。该系统包含 Silo 1 环境。接下来,我们将添加数据库组件的多个实例来配置不同的状态。
组件是一种可以出现在环境中的对象类型。必须添加执行特定功能的组件实例,才能使它们发挥作用。
现在已经为数据库组件配置了转移模式和录制模式。下一步是启用录制和捕获查询。
下一步是创建连接到数据资源库的虚拟资产,以捕获与查询关联的数据。我们将使用 Virtualize 桌面端来完成此步骤。
当您只使用 JDBC 驱动程序的查询模板录制数据库查询时,不会捕获数据。我们将使用数据库查询模板创建一个虚拟资产,并附加一个数据资源库和消息响应器来捕获数据。
ParabankLogin
,点击下一步。ParabankDB
。您还可以指定现有资源库,但当虚拟资产查询数据库时,捕获的数据将覆盖数据。资源库是相关数据集的集合。parabank-login
。数据集是相关数据字段的集合。虚拟资产将使用录制的 SQL 模板,用数据库中的数据填充数据资源库。在 CTP 中打开测试数据模块,点击您的资源库访问数据。
现在我们已经在数据库中捕获了数据,我们将制作数据资源库的快照,以便在必要时始终将数据重置为其初始状态。
下一步是配置一个虚拟数据库实例,该实例将从资源库中提取数据以进行测试。
通过使用测试数据进行更改,可以验证虚拟数据库是否使用了资源库中的数据。
此时,您可以克隆和修改记录,并使用 API 和手动 UI 测试中的数据。但我们将使用更强大的测试数据功能来扩展和修改测试数据,以满足软件测试生命周期中任何阶段的需求。