我尝试打开电子邮件中发送的自动生成的网址,作为激活过程的一部分。 我无法获得qtp来打开该链接。事实上,我不知道该怎么做。
任何帮助都将受到高度赞赏。
谢谢!
答案 0 :(得分:1)
在记录设置中,您可以设置记录Windows应用程序的选项(位置记录>记录和运行设置> Windows应用程序)。下面是一个脚本示例,用于从stackoverflow中的电子邮件中单击登录链接 - 使用UFT 12:
'To open Outlook
SystemUtil.Run "OUTLOOK.EXE"
Window("Microsoft Outlook").Activate
'Double click the top message in the inbox
Window("Outlook Inbox Column").WinObject("Table View").DblClick 118,72
'Find the location of the link within the Message
Window("Message (HTML)").WinObject("Message").Click 212,324
'Verify the link brought me to the Stack Overflow Login page
Browser("Add a login - Stack Overflow").WinObject("AddressDisplay Control").Check CheckPoint("AddressDisplay Control")
答案 1 :(得分:1)
Function OpenMailAndVerify(ByVal strSubject,Byval Activity)
Set objApp = CreateObject("Outlook.Application")
Set objNameSpace = objApp.GetNamespace("MAPI")
Set objSyncs = objNameSpace.SyncObjects
Set objSync = objSyncs.Item("All Accounts")
objSync.Start
Set myFolder = objNameSpace.GetDefaultFolder(6)
Set ObjMails = myFolder.Items
Set objFilter = ObjMails
Flag_EmailFound = False
For Each objItem In objFilter
If InStr(objItem.Subject, strSubject) = 1 Then
dtMyDate = objItem.SentOn
strSubject = objItem.Subject
strBody = objItem.Body
StartPos = InStr(strBody, "HYPERLINK")
EndPos = InStr(strBody, "Direct Link to Activity")
EndPos = EndPos - 1
StartPos = StartPos + Len("HYPERLINK") + 2
ActualLink = Mid(strBody, StartPos, EndPos - StartPos)
Flag_EmailFound = True
Exit For
End If
Next
If (Flag_EmailFound) Then
systemutil.Run ActualLink,,,,3
wait 5
If Browser("name:="&Activity&".*").Page("title:="&Activity&".*").Exist(10) Then
Browser("name:="&Activity&".*").Page("title:="&Activity&".*").Highlight
End If
End if
结束功能
答案 2 :(得分:0)
使用RegExp按名称识别链接,并使用描述性编程,您可以单击链接
示例:
这将是代码
urlString = "http://www.cnn.com/.*"
Browser("name:=test - .* - Gmail").Page("title:=test - .* - Gmail").Link("name:=" &urlString).Click