QTP中对用户自定义环境变量的XML操作的几个函数(3)

发表于:2012-07-25来源:Csdn作者:tulituqi点击数: 标签:qtp
Set vars =Environ.childNodes.item(0) Set newVar= vars.cloneNode(1) 复制 节点 修改子节点的值 newVar.childNodes.item(0).nodeTypedValue = varname newVar.childNodes.item(1).nodeTypedValue = var

  Set vars =Environ.childNodes.item(0)

  Set newVar= vars.cloneNode(1) '复制节点

  '修改子节点的值

  newVar.childNodes.item(0).nodeTypedValue = varname

  newVar.childNodes.item(1).nodeTypedValue = varvalue

  '添加节点

  Set newEnv= Environ.appendChild(newVar)

  '保存xml

  objxml.save filepath

  End Function

  Function updateVar(filepath,varname,varvalue) '已完成

  Set objxml= CreateObject("MSXML.DOMDocument")

  objxml.load filepath

  Set Environ = objxml.lastChild '获得节点

  allVar = Environ.childNodes.length '获得节点的子节点数量,即变量个数。

  ' Set dic = CreateObject("Scripting.Dictionary")

  ' For i=0 To allVar-1

  ' Set vars=Environ.childNodes.item(i) '获得节点

  ' var_name=vars.childNodes.item(0).nodeTypedValue

  ' var_value=vars.childNodes.item(1).nodeTypedValue

  ' dic.Add var_name,var_value

  ' Next

  ' If Not dic.Exists(varname) Then

  ' addVar filepath,varname,varvalue

  ' Exit Function

  ' End If

  For i=0 To allVar-1

  Set vars=Environ.childNodes.item(i) '获得节点

  var_name=vars.childNodes.item(0).nodeTypedValue

  If var_name=varname Then

  vars.childNodes.item(1).nodeTypedValue = varvalue '更新变量值

  Exit For

  End If

  Next

  '保存xml

  objxml.save filepath

  End Function

  Function delVar(filepath,varname) '已完成

  Set objxml= CreateObject("MSXML.DOMDocument")

  objxml.load filepath

  Set Environ = objxml.lastChild '获得节点

  allVar = Environ.childNodes.length '获得节点的子节点数量,即变量个数。

  If allVar=1 Then

  Exit Function

  End If

  For i=0 To allVar-1

  Set vars=Environ.childNodes.item(i) '获得节点

  var_name=vars.childNodes.item(0).nodeTypedValue

  If var_name=varname Then

  Environ.removeChild(vars) '删除节点

  Exit For

  End If

  Next

  '保存xml

  objxml.save filepath

  End Function

原文转自:http://www.ltesting.net