FitNesse:是否可以从一个测试步骤的响应中提取信息,并在下一个测试步骤中使用这个值

FitNesse: Is it possible to extract information from the response of a test step, and use this value in the next test step

我想知道 FitNesse 是否有可能在执行测试阶段时从测试阶段的响应中获取值并在下一个测试阶段使用该值。

我正在使用 hsac-fitnesse-fixtures 和 SOAP 网络服务。

比如我们有3个测试阶段,第一阶段响应的值可以自动转移到第二阶段得到第二阶段的响应。

与 SOAP UI 相比,我们有 属性 传输。

示例如下:

我们有请求XML:

!define POST_BODY_2 { {{{
    <ns1:ZIP>@{zip}</ns1:ZIP>
    </s11:Envelope>
}}} } 

第 1 阶段:

|check|xPath|//weather:City/text()|@{City}| 

我们得到一个包含城市名称的响应 XML,如 here

是否可以将这个城市名称作为值传递给第二个测试阶段?

即我们有另一个 post XML 请求 !define POST_BODY_3 并且我们可以向这个请求传递值(城市值)并获得下一个响应 XML。

第 2 阶段测试:

|check |response status|200|  

如果您使用 SLiM 作为测试系统,您可以使用 slim 符号

$slimSymbol 是 SLiM 测试系统中使用的 "runtime variable"。它们是通过在测试用例中使用 $slimSymbol= symtax​​ 定义的,并且该值仅在运行时可用。文档 here


在您的案例中,您在第一个测试用例中使用了决策 table。所以我想你可以做

而不是只有一个输出列
#some setup here

| send request |
| zip | City? | City? |
| 10007 | New York | $response1= |
| 94102 | San Francisco | $response2= |

并且在后面的测试用例中,您可以使用$response1$response2来引用城市名称。请注意,变量周围没有 {}