SOA 应用程序通常由不同的团队在不同的环境下开发和维护。
例如,开发人员可以在本地服务上启动测试。然后,当应用程序部署到开发构建服务器时,需要对该服务器执行相同的测试。随后,QA 和测试团队需要在它们自己集成的服务器上运行相同的回归测试。
Parasoft SOAtest 的环境管理功能促进了这类任务,因为重复使用和共享测试资产对于实现高效流程非常关键。一种常见的方法是让 SOAtest 配置自动生成的测试环境,然后修改环境设置,以便生成的测试可以更轻松地在不同环境中使用,而无需实际测试的任何更改。
若要使用预配置的环境变量创建新的测试套件:
- 右键单击以前练习的项目,然后从快捷菜单中选择 Add New> Test (.tst) File。
- 输入文件名称,然后单击 Next。
- 选择 SOA> WSDL ,然后单击 Next。
- 在 WSDL URL 字段中输入
http://localhost:8080/parabank/services/store-01?wsdl
。 - 确保已选中 Create Functional Tests From the WSDL 。
- 单击 Next 按钮两次,进入 Create Environment 页面。
- 选择 Configure environment settings for your project,在 Name 字段下输入
Default Store Environment
,在 Variable Types下选择 Both ,然后单击 Finish.
一个新的 Test Suite: Test Suite 节点显示在测试用例资源管理器选项卡中。新环境变量将被添加到默认存储环境(Default Store Environment)节点中。 - 双击添加到新测试套件的 Default Store Environment 节点。注意,环境配置现在如何包含 WSDL 和端点的变量。
- 打开一个生成的 SOAP 客户机测试,注意,上面显示的变量是通过名称引用的。例如:
- 运行 getItemByTitle 测试。SOAP 消息将被发送到原始存储服务中。
若要配置 SOAtest 以在其他环境中运行这些相同的测试,则创建新的环境配置:
- 右键单击 Environments 节点并选择 New Environment。
- 在新环境配置面板中,在 Name 字段中输入
Echo Environment
。 - 在表中,输入以下变量名和值:
- ENDPOINT: http://localhost:8080/parabank/echo.jsp
- WSDL: http://localhost:8080/parabank/services/store-01?wsdl
- 单击 Save ,保存新环境。
- 右键单击新 Echo Environment 节点,然后从快捷菜单中选择 Set as Active Environment 。这将设置新环境作为测试项目的新配置。
- 运行测试。SOAP 消息将被发送到 echo.jsp,而不是原始存储服务中。
注意:
- 类似于默认存储环境和 Echo 环境的 环境配置 可以导出和导入到外部 XML 文件中,也可以上传和引用到 Parasoft 团队服务器中。
- 类似于 ${ENDPOINT} and ${WSDL} 的 环境变量 可以从测试设置 GUI中的多数字段(而不只是 URL 字段)引用。
- 在数据源编辑器中,使用
soa_env
前缀来引用环境变量。例如,${soa_env:Variablel}/calc_values.xlsx
Web 场景中的环境
环境可以部署来协助 web 场景执行,在很大程度上,它们可以用于服务功能测试。
创建 web 功能测试时,将创建一个新环境。默认情况下,它包含正在测试(名为 {DOMAIN_COM_BASE_URL})的 web 站点上的 base URL。可以创建其他环境,该环境可以将测试初始化重定向到另一个 base URL(比如,正在测试一个本地部署的 web 应用程序)。
切换用于自动回归测试的环境
环境最大优点之一便是能够从命令行重新运行相同的回归套件,而无需打开 SOAtest GUI 并修改主机或 URL 设置。
关于如何实现这一点的示例,请查阅 Applying an Environment Configuration to a Regression Test from the Command Line。