Suv*_*ker 1 xml automated-tests testcomplete
我的XML文件的结构是这样的。
<?xml version="1.0" encoding="utf-8" ?>
<atom:entry xmlns:atom="http://www.w3.org/2005/Atom"xmlns:core="http://x.y.com/xy/xyz">
<atom:title>TestTitle</atom:title>
<atom:link rel="a" href="$a_u"/>
<atom:link rel="ot" href="$ou"/>
<atom:link rel="db" type="app/c.d.p+xml" href="e.xml">
<atom:inline>
<payload xmlns="http://www.yyy.com/xxx" model="https://xxxx.yyy.com/api/te/db/et/r1">
<field name="asset.title">
<value>DP</value>
</field>
<field>
<value>xxx</value>
</field>
|
|
|
</atom:inline>
</atom:link>
</atom:entry>
Run Code Online (Sandbox Code Playgroud)
我试图获取DP提起诉讼的人的价值name="asset.title"
跟随这位医生的尝试,但没有运气。
http://support.smartbear.com/viewarticle/57106/
http://support.smartbear.com/viewarticle/58850/
我如何获得这个价值。在此先感谢您的指导或帮助。
在处理定义了名称空间的XML时,需要指定选择名称空间。以下脚本适合您。
function test()
{
var fileName = "c:\\test.xml";
var doc = Sys.OleObject("Msxml2.DOMDocument.6.0");
doc.setProperty("SelectionNamespaces", "xmlns:atom='http://www.w3.org/2005/Atom' xmlns:ns='http://www.yyy.com/xxx'");
doc.load(fileName);
var value = doc.selectSingleNode("/atom:entry/atom:inline/ns:payload/ns:field[@name='asset.title']/ns:value").text;
Log.Message(value);
}
Run Code Online (Sandbox Code Playgroud)