首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用HP-UFT,有没有办法判断对象存储库中的对象是否正在其他测试中使用?

使用HP-UFT,有没有办法判断对象存储库中的对象是否正在其他测试中使用?
EN

Stack Overflow用户
提问于 2017-10-31 06:35:20
回答 3查看 101关注 0票数 1

我目前正在使用UFT --我有一个GUI测试,我想删除/更新其中一个测试中的web element对象,但我担心它会被我们测试套件中的另一个测试引用。(我正在进入别人构建的测试套件)

有没有办法判断对象存储库中的某个对象是否正在其他测试中使用?(不需要进入每个单独的测试和操作来找出答案?)

EN

回答 3

Stack Overflow用户

发布于 2017-10-31 11:09:45

我的方法是简单的递归文件搜索。

  1. 打开EditPlus
  2. Search文件夹在文件中查找
  3. 查找内容=文件类型= *.mts | *.vbs | *.qfl Folder =
  4. 选中包括子文件夹复选框
  5. 单击查找
票数 1
EN

Stack Overflow用户

发布于 2018-01-19 23:00:27

您可以使用来自用友的Search>View>Find (或ctrl+F),并选择查看整个解决方案

票数 1
EN

Stack Overflow用户

发布于 2018-01-21 02:40:22

从每个操作中打开"Script.mts“文件,并搜索您的对象名称。如果找到对象,请将对象所在的脚本名和行号写在一个文件中。

使用以下代码:

代码语言:javascript
复制
'strScriptsPath is the path where your test script folders are placed.

Set strScripts = objFSO.GetFolder(strScriptsPath).SubFolders
For Each Script In strScripts
    strAction = strScriptsPath & "\" & Script.Name & "\Action1\Script.mts"
    If objFSO.FileExists(strAction) Then
        'Open Script in NotePad
        Set strFile = objFSO.OpenTextFile(strAction, 1)
        Do While Not (strFile.AtEndOfStream)
            strLine = strFile.ReadLine
            If InStr(1, strLine, strObjectName) > 0 Then
                iVerificationCount = objSheet.UsedRange.Rows.Count
                iCurrentRow = iVerificationCount + 1
                objSheet.Cells(iCurrentRow, 1) = Script.Name
                objSheet.Cells(iCurrentRow, 2) = strLine
                If strFile.AtEndOfStream Then
                    objSheet.Cells(iCurrentRow, 3) = strFile.Line
                Else
                    objSheet.Cells(iCurrentRow, 3) = strFile.Line - 1
                End If
            End If
        Loop
        strFile.Close
        Set strFile = Nothing
    End If
Next
Set strScripts = Nothing

为了能够使用此代码,请声明objFSO对象并编写一段代码来创建excel并获取objSheet。

您还可以使用以下代码替换对象名称:

如上所述,使用For Each循环

代码语言:javascript
复制
strScript = strScriptsPath & "\" & strScriptName & "\Action1\Script.mts"
strFind = "Old Object Name"
strReplace = "New Object Name"
Set strFile = objFSO.OpenTextFile(strScript, 1)
strData = strFile.ReadAll
strNewData = Replace(strData, strFind, strReplace)
strFile.Close
Set strFile = Nothing
Set strFile = objFSO.OpenTextFile(strScript, 2)
strFile.Write strNewData
strFile.Close
Set strFile = Nothing

**你只需要把整个代码写在一个.vbs文件中,然后运行这个文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47025242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档