本主题介绍如何配置部署到 Virtualize 服务器的各个虚拟资产。有关配置 Virtualize 服务器设置的详情,请参阅配置服务器和部署设置。
章节目录:
访问虚拟资产配置设置
双击 Virtualize 服务器视图中的虚拟资产以访问其配置设置。或者,您可以右键点击资产,然后选择打开。
配置虚拟资产行为
有关如何使用不同的请求/响应用例、错误条件和其他行为来自定义虚拟资产的详情,请自定义相关的消息响应器工具,如消息响应器概要中所述。
常规选项卡
在常规选项卡中,可以找到以下设置。
响应器套件
指定在其中配置消息响应器的响应器套件,它实质上是一个 .pva 文件。要更改用于此虚拟资产部署定义的文件,通常浏览到本地工作空间或文件系统中的 .pva 文件。文件路径是相对于 VirtualAssets 项目文件夹的。
说明
提供虚拟资产的说明。
Jar 文件必须添加至 classpath
在通过 JMS 和/或 MQ 部署虚拟资产之前,请确保将适当的 jar 文件添加到 Virtualize classpath。有关如何操作的详情,请参阅系统属性设置。
最近更改
显示最近修改虚拟资产的用户的用户名。此字段不可编辑。该用户名根据 Parasoft 首选项设置;如需更改用户名,请访问 Parasoft > 首选项,然后点击 Parasoft。
传输选项卡
传输选项卡包含有关虚拟资产应如何接收和响应消息的配置设置。
HTTP 设置
可以指定以下 HTTP 设置。
路径
在服务器上指定虚拟资产将通过 HTTP 监听传入消息的路径。如果未指定任何值,则仅将 JMS、MQ 或定制传输监听器设置应用于接收消息。
我们建议为每个虚拟资产提供唯一的 HTTP 路径,除非您希望 Virtualize 在搜索配置为响应传入消息的响应器时查找多个虚拟资产。
如果您在同一 HTTP 路径上部署多个虚拟资产,则 Virtualize 将查看每个虚拟资产,直到它根据响应者相关性条件找到与消息匹配的响应者,并将该响应者和虚拟资产用于响应。在这种情况下,评估虚拟资产的顺序不固定;Virtualize 将使用评估过程中找到的第一个虚拟资产。
通配符可用于允许路径的各个部分是动态的。例如,假定两个请求发送到 paths /path/1/service
和 /path/2/service
上的 Virtualize。要使两个请求都到达相同的虚拟资产,请将路径配置为 /path/*/service
。
支持使用通配符替换路径的整个段。例如:
/path/*/service
— 有效/path/1*2/service
— 无效
HTTP 端点
如果使用 HTTP(而不是 JMS 或 MQ),则可以在此处访问虚拟资产。要使用虚拟资产,您可以将应用程序配置为使用此 URL 代替实际资源的 URL。任何可以访问此终结点的计算机都可以访问和使用您的虚拟资产。
JMS 设置
您可以配置虚拟资产以发送和接收消息到队列或主题。有关配置 JMS 设置的详情,请参阅 JMS。
- 要配置适用于特定 Virtualize 服务器的全局 JMS 设置,请在 Virtualize 服务器视图中双击相应的服务器计算机节点。
- 要为特定虚拟资产配置 JMS 设置,请在 Virtualize 服务器视图中双击相应的虚拟资产节点。
可以指定以下设置。
点到点
启用此选项,表明指定了目标和回复队列的消息传递模型。启用消息传递模型后,可以在“本地设置”部分中输入每个连接的设置,也可以引用在 Virtualize 服务器级别定义的全局 JMS 连接(请参阅连接选项卡)。
发布-订阅
启用此选项表明指定了发布和订阅话题中的消息传递模型。启用消息传递模型后,您可以在本地设置部分输入每个连接的设置,也可以引用在 Virtualize 服务器级别定义的全局 JMS 连接(请参阅连接选项卡)。
客户端发布(发布-订阅模式)
指定客户端应用程序请求的主题名称,然后从设置菜单中选择连接配置选项。
选择本地设置来使用提供者 URL、初始化环境类、连接工厂和在本地设置部分中指定的登录凭据,或者选择在 Virtualize 服务器的连接选项卡上配置的连接(请参阅Using Global JMS Connections)。
目标队列(点对点模式)
指定消息目标队列的名称,并从设置菜单中选择连接配置选项。
选择本地设置来使用提供者 URL、初始化环境类、连接工厂和在本地设置部分中指定的登录凭据,或者选择在 Virtualize 服务器的连接选项卡上配置的连接(请参阅Using Global JMS Connections)。
客户端订阅(发布-订阅模式)
指定客户端应用程序订阅响应的主题名称,然后从设置菜单中选择连接配置选项。
选择本地设置来使用提供者 URL、初始化环境类、连接工厂和在本地设置部分中指定的登录凭据,或者选择在 Virtualize 服务器的连接选项卡上配置的连接(请参阅Using Global JMS Connections)。
回复队列(点对点模式)
指定用于发布响应的队列的名称,然后从设置菜单中选择连接配置选项。
选择本地设置来使用提供者 URL、初始化上下文类、连接工厂和在本地设置部分中指定的登录凭据,或者选择在 Virtualize 服务器的连接选项卡上配置的连接(请参阅Using Global JMS Connections)。
使用 JMSReplyTo 响应
启用此选项来使用消息的 JMSReplyToQueueName
头来确定虚拟资产将响应发送到的位置。
如果启用了使用 JMSReplyTo 响应选项,来自传入请求的值将用于确定将响应发送到何处。如果未启用该选项,响应将发送值 UI 中指定的队列;JMS 消息头中的值将被忽略。
消息选择器
(可选)当多个服务使用同一队列时,指定消息选择器表达式将很有帮助。例如,如果消息选择器表达式为 "product =
'virtualize'"
,则虚拟资产将仅在队列/主题中选择具有 JMS 消息属性 product
(其值为 virtualize
)的消息。更多提示,请参阅使用消息选择器过滤器。
线程数
线程数影响创建的监听器工作线程的数量。详情请参阅Adjusting the Worker Count。
本地设置
配置队列或主题连接设置时选择本地设置,然后配置以下设置。要使用服务器级别配置的设置,请参阅Using Global JMS Connections。
提供者 URL
指定将 javax.naming.Context.PROVIDER_URL
传递给 JNDI javax.naming.InitialContext
构造函数。
Initial context class
指定一个完全限定类名字符串,将其传递给 JNDI javax.naming.InitialContext
构造函数,作为名为 javax.naming.Context.INITIAL_CONTEXT_FACTORY
的属性的字符串值。
连接工厂
指定用于从初始上下文查找特定于 MOM 的工厂的键。这可以是队列连接工厂,也可以是主题连接工厂。确保将相关的 jar 添加到 Virtualize classpath。请参阅 JMS 提供者配置以获得为您的特定 JMS 提供者添加哪些工厂类的技巧。
用户名/密码
指定 JMS 提供者的登录凭据(如果适用)。
其他初始上下文 JNDI 属性
指定要应用于该属性的任何其他 JNDI 属性。
使用全局 JMS 连接
您可以使用 Virtualize 服务器配置中定义的连接设置。有关配置全局 JMS 连接的详情,请参阅连接选项卡。要使用全局 JMS 连接,请从设置菜单中选择。
要查看预定义全局连接的详情,请点击查看设置。
JMS 消息类型支持
内置的 JMS 消息监听器接收并响应 javax.jms.TextMessage
消息类型。
通过 JMS 部署虚拟资产的行为
这个请求消息的 JMSMessageID
将作为响应消息的 JMSCorrelationID
来发送。
只需通过使应用程序照常将消息发送或发布到指定的目的地,就可以调用通过 JMS 部署的虚拟资产。Virtualize 将使用该目标上的消息。如 消息选择器表达式字段中指定值,则它将使用任何与指定表达式匹配的消息。
浏览队列内容 - 通过 JMS 部署的虚拟资产的调试和测试
在调试环境和测试虚拟资产配置时,您可能需要使用队列浏览器来查看队列内容。当您尝试了解和解决异常行为时,这种可见性可能会非常有用。详情请参阅浏览队列(SOAtest)或浏览队列(Virtualize)。
MQ 设置
如果配置必要的 MQ 设置,虚拟资产可以模拟通过 IBM WebSphere MQ 队列进行通讯的服务。更多详情,请参阅IBM WebSphere MQ。
可以指定以下 MQ 设置。
Get 队列
指定 Virtualize 检索请求消息的队列(也称为“get”或“pull”),然后从设置菜单中选择您的连接设置。
选择本地设置以使用在本地设置部分配置的连接设置,或选择一个在 Virtualize 服务器配置的连接选项卡中配置的设置。(请参阅Using Global MQ Queues)。
Put 队列
指定 Virtualize 要发送响应消息的队列(也称为“put”或“push”),然后从设置菜单中选择您的连接设置。
选择本地设置以使用在本地设置部分配置的连接设置,或选择一个在 Virtualize 服务器配置的连接选项卡中配置的设置。(请参阅Using Global MQ Queues)。
使用 replyToQueueName 作为响应
启用此选项来使用消息的 replyToQueueName
头来确定虚拟资产将响应发送到的位置。它影响 MQMT_REQUEST
类型的 MQ 消息的响应。
如果启用了使用 replyToQueueName 响应选项,来自传入请求的值将用于确定将响应发送到何处。如果未启用该选项,响应将发送值 UI 中指定的队列。更具体地说:
- 如果启用了使用 replyToQueueName 响应,并且指定了
MQMD.replyToQueueManagerName
和MQMD.replyToQueueName
的值,那么这些值将确定要将响应发送到的队列管理器和队列名称。 - 如果启用了使用 replyToQueueName响应,并且请求中缺少了
MQMD.replyToQueueManagerName
或MQMD.replyToQueueName
,那么将使用 UI 中指定的值来替代缺少的值。
如果禁用了使用 replyToQueueName响应,那么将忽略 MQ 请求消息中的 replyToQueueName
和 replyToQueueManagerName
字段。UI 设置将确定消息发送到何处。
消息选择器
(可选)当多个应用程序使用同一个队列时(或队列上交换了多种类型的消息),可能有必要过滤 Virtualize 接收到的消息。该字段中的值(如果提供了值)与队列中消息中的 MQMD applicationIdData 字段匹配。在这种情况下,MQ API MQC.MQGMO_BROWSE_NEXT
标志用于从队列中获取消息。
线程数
线程数影响创建的监听器工作线程的数量。详情请参阅Adjusting the Worker Count。
本地设置
配置队列或主题连接设置时选择本地设置,然后配置以下设置。本地设置配置中不支持 SSL。必须配置全局 MQ 队列以在 Virtualize 服务器的Connections Tab中使用 SSL,然后从设置菜单中选择队列(请参阅Using Global MQ Queues)。
模式
选择其中一项以下方式:
- 默认模式:允许您手动输入详细的连接信息(例如,主机、端口、通道等)。
- CCDT 模式:允许指定提供连接详细信息的客户端通道定义表(CCDT)文件。
主机(默认模式)
指定 MQ 队列管理器主机。
端口(默认模式)
指定 MQ 队列管理器端口。
通道(默认模式)
指定 MQ 队列管理器通道。
CCDT 文件(CCDT 模式)
指定客户端通道定义表格文件的位置,该表格提供了连接详情。
如果正在使用远程服务器上的 CCDT 模式,请指定 CCDT 文件的相对路,因为它将出现在 Virtualize 服务器树中的“文件”节点下。这个选项在工作空间或文件系统中浏览文件的操作将不可用。
如果要配置当前部署在本地服务器上但稍后将部署在远程服务器上的虚拟资产,则建议将 CCDT 文件与 .pva 文件一起保留。您需要先将 CCDT 文件部署到远程服务器,然后再将虚拟资产部署到该远程服务器。详情请参阅在远程服务器和本地计算机之间传输文件。
队列管理器
指定队列管理器的名称。
用户名
如果要求登录凭据,则在该字段指定用户名。
密码
如果要求登录凭据,则在该字段中指定密码。
使用全局 MQ 队列
如果要在单个虚拟资产中配置部署在不同 MQ 服务器上的队列(例如,要让特定虚拟资产使用部署在两个不同 MQ 服务器上的两个队列),可以在 Virtualize 服务器级别全局定义,然后在此处引用。详情请参阅Connections Tab。
浏览队列内容 - 通过 MQ 部署的虚拟资产的调试和测试
在调试环境和测试这个虚拟资产配置时,您可能需要使用队列浏览器来查看队列内容。当您尝试了解和解决异常行为时,这种可见性可能会非常有用。详情请参阅浏览队列。
调整工作线程数量
每个工作线程创建自己到 MQ/JMS 提供者的连接。例如,对于 MQ,如果您有 20 个工作线程,则您的 WebSphere MQ Explorer 在 Open input count 列中应显示虚拟资产正在监听的请求(get)队列的值 20。当部署/重新部署资产时,工作线程计数高于默认值 1,则应该在控制台中看到类似“Started x listener(s)”这样的消息(其中 x 是配置的工作线程数量)。
增加工作线程数量可以帮助提高并发下的性能。虚拟资产的整个消息处理链都是并行的,因此每个工作线程都会与其他线程并行处理消息关联、响应消息生成等工作。但是,要注意,如果提供了较高的工作线程数量,部署、取消部署或者重新部署的资产将花费更长的时间,因为要创建、销毁的连接更多。同样,WebSphere MQ 基础结构或 JMS 提供者可能会限制允许的并发连接数。不应该超过基础设施配置/允许的范围。
线程数特性相当于 Tomcat server.xml 中的 maxThreads
属性。
当将 Virtualize 提供给大量并发虚拟用户(例如在负载测试期间)时,通常可以通过增加这些值来期望更好的性能。
配置自定义传输虚拟资产设置
可以在自定义选项卡中配置自定义监听器的设置。
如果只有一个自定义监听器可用,则这个选项卡将专门用于配置该自定义格式:
如果有多个自定义监听器可用,则可以从选择实现菜单选择要使用的监听器,然后根据需要使用可用的控件进行配置。
性能选项卡
请参阅使用性能配置文件。
数据源选项卡
请参阅使用数据组。
配置虚拟数据库部署设置
包括 SQL 响应器的 .pvas 没有特别限制,任何路径都是可以接受的。默认情况下,Parasoft JDBC 驱动程序调用部署在 /virtualDb
上的虚拟资产(当处于 Virtualize 或 Hybrid 模式时)。如果要将其配置来调用部署在不同端点的虚拟资产时,请添加合适的属性,如指定 Parasoft JDBC 驱动程序调用的虚拟资产中所述。
同一条路径可能有多个虚拟资产。在这种情况下,Virtualize 将找到与传入查询相对应的虚拟资产和 SQL 响应器。
也可能有一个由多个虚拟资产使用的数据库记录,每个虚拟资产都部署在不同的路径/端点。这样,如果您有三个不同的 AUT(所有这些 AUT 都需要访问相同的虚拟数据库行为),则可以从同一记录中创建三个不同的虚拟资产,然后将每个 AUT 指向一个单独的虚拟资产(部署在单独的端点上)。