您可以创建数据关联规则,该规则用于从应用于测试数据的正则表达式创建替换。
过程
- 在规则编辑器中打开数据关联规则集。 新规则集将包含一个空的规则通道。
- 单击插入,然后选择创建替换。 空的创建替换规则将插入规则通道。
- 在详细信息下,为已用星号标记且加上红色阴影的所有字段都提供信息。对于字段,请单击向下箭头以选择要为其创建替换的字段。使用窗口顶部的按钮来选择协议,然后选择字段。要在 HTTP 请求的数据字段中创建替换,请单击向下箭头,然后单击 。
- 在正则表达式中,输入要用来查找替换的正则表达式。如果替换仅需要正则表达式的一部分,请用括号将该部分括起来。
- 打开测试,并查找要在其中创建替换的请求。
- 将请求中的文本复制到剪贴板。
- 在规则编辑器中,单击切换正则表达式助手按钮以打开正则表达式助手。
- 将剪贴板中的文本粘贴到正则表达式助手窗口的“测试正则表达式”页面。 如果“测试正则表达式”页面是空的,那么会自动将剪贴板的内容粘贴到其中。
- 单击正则表达式助手中的已捕获组选项卡。 将显示总体组,并显示已捕获的组。如果未显示任何组,请相应地编辑正则表达式。
要使用同一正则表达式来创建多个替换站点,请将每个部分都括在括号中。例如,可从以下正则表达式创建两个替换站点:(.+?)=(.*?). 要使用已在父创建引用规则中创建的值来作为正则表达式中的参数,请在引用名称两边加上百分号。例如,如果父规则创建了 name 引用和 value 引用,那么可在以下正则表达式中使用这些引用:\:\{%name%,%value%\}。
运行规则时,%name% 和 %value% 将替换为父规则所抽取的值,然后将对所得到的正则表达式进行求值。将创建两个替换,每个替换都链接到对应的引用。
- 在替换名称中,输入替换的名称。
- 在对字段解码下,选择 true 以在搜索匹配的引用之前对指定属性进行解码。
选择 false 以在不对此属性解码的情况下搜索匹配的引用。编码的类型取决于所选的协议和属性。例如,HTTP 数据可以进行 URL 编码。
- 可选: 在仅在使用情况下创建替换下,选择 true 以仅在找到匹配的数据源的情况下创建替换。选择 false 以始终创建替换,而不管是否找到了匹配的数据源。
- 可选: 在冲突操作下,选择当新替换与现有替换重叠时要执行的操作。
选项 |
描述 |
总是替换现有 |
如果新替换与其他替换重叠,那么将移除其他替换。 |
如果是候选数据池则替换现有 |
如果新替换与其他替换重叠,并且所有其他替换都是数据池候选项,那么将移除其他替换。如果至少一个与新替换站点重叠的当前替换站点与引用关联,那么不会更改任何当前替换,也不会创建新替换。 |
如果包含在新站点中则替换现有 |
如果新替换与全都完全包含在新替换中的其他替换重叠,那么将移除其他替换。如果至少一个当前替换与新替换重叠而未完全包含在新替换中,那么不会更改任何当前替换,也不会创建新替换。 |
如果是候选数据池或包含则替换现有 |
如果新替换与其他替换重叠,并且每个其他替换都是数据池候选项或都完全包含在新替换中,那么将移除其他替换。如果至少一个当前替换与新替换重叠而未完全包含在新替换中,或者如果至少一个与新替换站点重叠的当前替换站点实际上与引用关联,那么不会更改任何当前替换,也不会创建新替换。 |
保留现有 |
如果新替换与其他替换重叠,那么不会移除其他替换。不会创建新替换。 |
- 可选: 在日志级别中,选择要写到错误日志的错误数据的级别。通过日志,您可以查看哪些规则有效,而哪些没有。当您调试数据关联规则时,请使用操作日志级别。如果操作日志级别无法提供足够的数据来进行故障诊断,请使用详细信息日志级别。详细信息日志级别将生成数量大得多的日志条目。通常情况下,如果确定您已编写的数据关联规则可正确工作,请使用无或摘要日志级别以减少内存和磁盘空间耗用以及错误日志中不需要的条目。
选项 |
描述 |
无 |
不会记录任何内容。 |
警告 |
如果在应用规则时检测到潜在问题,那么会记录一条消息。 |
摘要 |
将为规则记录一条消息,而无论规则应用了多少次。 |
重要信息 |
每次以非典型方式应用规则时都会记录一条消息。这是缺省日志级别。 |
操作 |
每次应用规则时都会记录一条消息。 |
详细信息 |
每次应用规则时都会记录一条详细消息。 |
- 可选: 在标签中,输入规则的标签。如果不输入标签名称,那么将为规则提供缺省名称。
此缺省名称是附加了正则表达式的基本名称。
- 可选: 在描述中,描述规则。如果您与其他测试人员共享规则集文件,那么描述可能有用。