Parasoft 解决方案为生成和使用 JMS 消息以及模拟各种模式(包括点对点和发布订阅模式)提供了广泛的支持。这允许对消息传递系统进行端到端测试和验证。这些相同的场景可以扩展到负载测试中。
本课的练习将使用前面 Setting Up ParaBank中介绍的 ParaBank 应用程序。
准备:运行 ParaBank
若要配置 ParaBank 测试的 SOAtest,请完成以下内容:
- 将 JDBC 驱动程序添加到 SOAtest JDBC 驱动程序首选项页面,如下所示:
- 选择 Parasoft> Preferences,然后打来 Parasoft > JDBC Drivers。
- 单击 New。
- 导航到您的 ParaBank 工作区,选择
{PARABANK}/WebContent/WEB-INF/lib/hsqldb-<version>.jar
然后单击 Open。 - 单击 OK ,应用更改。
- 将 ActiveMQ 驱动程序添加到 SOAtest 系统属性首选项页面,如下所示:
- 从主菜单中选择 Parasoft> System Properties 。
- 单击 Add JARs。
- 导航到您的 ParaBank 工作区,选择
{PARABANK}/WebContent/WEB-INF/lib/activemq-client-<version>.jar
,然后单击 Open。
- 确保启动并同步了 ParaBank Tomcat 8.5 服务器。
测试 JMS 服务
若要测试 ParaBank 应用程序提供的 JMS 服务:
- 请右键单击您在本教程中使用的主项目,然后选择 Add New > Test (.tst) File。
- 在 File Name 字段中输入
LoanProcessor
,然后单击 Next。 - 选择 Empty,然后单击 Finish。
- 右键单击 Loan Processor> Test Suite: Test Suite 节点,然后选择 Add New> Test。
- 添加一个 SOAP 客户端工具,如下所示:
- 右键单击 Loan Processor> Test Suite: Test Suite 节点,然后选择 Add New> Test。
- 选择 SOAPClient,然后单击 Finish。
- 在打开的 SOAP 客户端编辑器中,将 SOAP 客户端重命名为
initializeDB
。 - 跳转至 WSDL 选项卡,并将
http://localhost:8080/parabank/services/ParaBank?wsdl
输入到 WSDLURL 字段。 - 单击 RefreshWSDL 将 WSDL 传播到 SOAP 客户端的其他部分。
- 跳转至 Request 选项卡并确保将 Operation 设置为 initializeDB。对于本例,这将重置 ParaBank 数据库。
- 保存 initializeDB SOAP 客户端。
- 添加一个消息传递客户端工具,如下所示:
- 右键单击 Loan Processor> Test Suite: Test Suite 节点,然后选择 Add New> Test。
- 选择 MessagingClient,然后单击 Finish。
- 在打开的消息传递客户端编辑器中,将消息传递客户端重命名为
requestLoan
。 - 单击 Request 选项卡,并将 InputMode 设置为 Literal。
用以下 XML 替换
<Placeholder/>
元素:<?xml version="1.0" encoding="UTF-8"?> <loanRequest> <requestDate>2017-04-14T16:23:24.974-07:00</requestDate> <customerId>13344</customerId> <availableFunds>1231.10</availableFunds> <loanAmount>1000</loanAmount> <downPayment>100</downPayment> </loanRequest>
- 保存消息传递客户端。
- 将 InputMode 切换为 FormXML。
如果弹出提示,则单击 Yes 来传播这些值。您将看到 loanRequest 元素的树结构。 - 跳转至 Transport 选项卡,将 Transport 设置为 JMS,然后输入以下内容:
- ProviderURL: tcp://localhost:61616
- InitialContext: org.apache.activemq.jndi.ActiveMQInitialContextFactory
- 连接工厂:QueueConnectionFactory
- 从左窗格中选择 Queue/Topic ,然后输入
queue.loans.request
作为 JMSDestination ,输入queue.loans.response
作为 JMSReplyTo。 - 保存 requestLoan 消息传递客户端。
- 运行测试套件。
- 展开 requestLoan 消息传递客户端节点,双击流量视图器。
- 打开流量视图器的 Response 选项卡,注意 <approved> 元素返回 true。