VB6读写XML的有关问题

VB6读写XML的问题
我用IXMLDOMNode类读写一个xml,文件格式如下

<Data>
  <Total>
    <Message>
         <test Type="aa" />
    </Message>
    <Message>
         <test Type="bb" />
     </Message>
     ...
  </Total>
  <Total>
    <Message>
         <test Type="cc" />
    </Message>
    <Message>
         <test Type="dd" />
     </Message>
     ...
  </Total>
</Data>


我想遍历一级节点“Total”和二级节点“Message”,取出test的属性值,用了以下代码:
Set NodeList = Xml.documentElement
For Each ChildNode In NodeList.childNodes
  Set ChildMessage = ChildNode.selectSingleNode("//Message")
      For Each ChildData In ChildMessage.childNodes
        xlst.Cells(i + 1, 1) = ChildData.selectSingleNode("test").Attributes(0).Text
        i = i + 1
        DoEvents
     Next
Next


但是,用我的代码只能取出一级节点的第一个数据块,也就是只能获取到aa bb的值,cc dd再往后就是获取不到,请高手帮我看下,谢谢!
------解决思路----------------------

Set NodeList = XML.documentElement.selectNodes("//test")
For Each childnode In NodeList.childNodes
    Debug.Print childnode.Attributes(0).Text
Next



------解决思路----------------------
操作XML就应该用XPath啊。
[code=txt]    Dim NodeList As IXMLDOMNodeList
    Dim i As Long
    
    Set NodeList = xml.selectNodes("Data//Total//Message//test//@Type")
    For i = 0 To NodeList.length - 1
        Debug.Print NodeList(i).Text
    Next[/code]