-1
저는 BaseX에서 xquery를 사용하여 원하는 형식으로 JMeter 테스트 케이스 (.jmx 파일)에서 정보를 검색하려고합니다. 이것은 내가 결과의 모습을 기대하는 것입니다XQuery - 단일 노드에서 요소의 시퀀스 묶음
<HttpRequests>
<HttpRequest>
<method>POST</method>
<path>/config</path>
<resource>CentralConfiguration/Requests/addConfiguration.jmx</resource>
</HttpRequest>
</HttpRequests>
<HttpRequests>
<HttpRequest>
<method>POST</method>
<path>/propertyType</path>
<resource>CentralConfiguration/Requests/addPropertyType.jmx</resource>
</HttpRequest>
</HttpRequests>
...
:
이let $rlist := db:list("JMeter")
for $resource in $rlist
let $rcontent := db:open("JMeter", $resource)
let $ret :=
<HttpRequest>
{
for $item in $rcontent/jmeterTestPlan//HTTPSamplerProxy
return
(<method>
{
$item/stringProp[attribute()/string() = "HTTPSampler.method"]/text()
}
</method>,
<path>
{
let $parse := $item/stringProp[attribute()/string() = "HTTPSampler.path"]/text()
let $parse := fn:replace($parse, "\?[^/]*", "")
let $parse := fn:replace($parse, "\$[^/]*", "\${}")
let $parse := fn:replace($parse, "[0-9]+", "\${}")
return $parse
}
</path>,
<resource>
{
$resource
}
</resource>)
}
</HttpRequest>
return
<HttpRequests>
{
$ret
}
</HttpRequests>
결과 XML은 다음과 같습니다
이 (BaseX GUI 내부) 실제로 실행 해요 코드입니다
<HttpRequests>
<HttpRequest>
<method>POST</method>
<path>/config</path>
<resource>CentralConfiguration/Requests/addConfiguration.jmx</resource>
</HttpRequest>
<HttpRequest>
<method>POST</method>
<path>/propertyType</path>
<resource>CentralConfiguration/Requests/addPropertyType.jmx</resource>
</HttpRequest>
...
</HttpRequests>
나는, 많은 예상 된 결과를 얻기 위해 내 XQuery를 서식에 도움을 주셔서 감사합니다 거라고 감사
실제 코드 앞에 나오는 예는 도움이되지 않습니다. 그것을 제거하고 당신이 원하는 출력과 실제 코드와 함께 출력을 보여줍니다. – wst