В UFT я написал функцию электронной почты, используя VBScript, но электронная почта не запускается из моего почтового ящика

В UFT я написал функцию электронной почты, используя VBScript, но электронная почта не запускается из моего почтового ящика. Это триггер из SBGalert@.co.za, в то время как я также упомянул адрес From.

Пожалуйста, помогите мне исправить письмо, которое будет отправлено из моего почтового ящика заинтересованным лицам. Я использую Outlook 15.

Пожалуйста, найдите мой код ниже, чтобы проверить и помочь.

Function Email
'Dim ToAddress
'Dim Subject
'Dim Body
Dim Attachment
Dim oUtlookApp, nAmeSpace, newMail
Dim fso, TextFile

SystemUtil.Run "C:\Program Files\Microsoft Office 15\root\office15\OUTLOOK.EXE" 'This line should be enabled if the Outlook on the desktop is not running
If strMailID_From <> "abc@<abc>.co.za" Then
FromAddress = strMailID_From
Else
FromAddress = "abc@<abc>.co.za"
End If

ToAddress = "abc@<abc>.co.za" ' Message recipient Address

Set oUtlookApp = CreateObject("Outlook.Application")
Set nAmeSpace = oUtlookApp.GetNamespace("MAPI")
Set newMail = oUtlookApp.CreateItem(1)

Subject = "This is a test mail" 'Message Subject you can update

'For Creating File System Object
Set fso = Createobject ("Scripting.FileSystemObject")

'For Opening the Report File in Append Mode
Set TextFile = fso.OpenTextFile(strPath & "results.html" , 8, True)
strExecutionTimeFormate=Replace(strExecutionTime,"-",":")
TextFile.Write "<html><head><title>VAF -S2K - Automation Execution Consolidated Result</title></head>"
TextFile.Write "<body bgcolor=#3D5FA3><table width=100% bgcolor=#FFFFFF border=2 cellpadding=2 cellspacing=1>"
TextFile.Write "<tr bgcolor=#CBD9F4></td><td bgcolor=#CBD9F4 width = 100%><div align=center><font color=purple><font size=5><p><strong>Automation Execution Consolidated Results</strong></p><font color=purple><font size=5><p><strong><font size=3>Execution Date -"&strExecutionDate&"  Execution Time :"&strExecutionTimeFormate&" [HH:MM:SS]</strong></p></td></div></tr>"
TextFile.Write "<body bgcolor=#3D5FA3><table width=100% bgcolor=purple border=1 cellpadding=3 cellspacing=1>"
TextFile.Write "<tr bgcolor=#CBD9F4></td><td bgcolor=#CBD9F4 width = 100%><div align=center><font color=purple><font size=5><font size=3><p><strong>Portfolio : VAF &nbsp || &nbsp Application  : S2K &nbsp || &nbsp Environment : SIT 1 &nbsp || &nbsp Project : Sanity Testing</strong></td></Table>"
TextFile.Write "<body bgcolor=#3D5FA3><table width=100% bgcolor=purple border=1 cellpadding=3 cellspacing=1>"
TextFile.Write "<tr><td bgcolor=white width = 20%><div align=Center><font color=Black><strong>APPLICATION</td><td bgcolor=white width = 45%><div align=Center><font color=Black><strong>TEST CASE NAME</td><td bgcolor=white width = 20%><div align=Center><font color=Black><strong>TEST CASE STATUS</td><td bgcolor=white width = 15%><div align=Center><font color=Black><strong>RUN TIME</td></Table>"
TextFile.Write "<body bgcolor=#3D5FA3><table width=100% bgcolor=purple border=1 cellpadding=3 cellspacing=1>"
'|| &nbsp Cycle : 1 &nbsp
'TextFile.Write "<tr bgcolor=#IBD9F4></td><td bgcolor=#IBD9F4 width = 100%><div align=center><font color=purple><font size=5><p><strong>Automation Execution  Consolidated Results</strong></p><font color=purple><font size=5><p><strong><font size=3>Execution Date -"&strExecutionDate&"  Execution Time :"&strExecutionTimeFormate & "</strong></p><font color=purple><font size=3><p><strong>Portfolio : Self Service Channel     Application  : Internet Banking     Cycle : 1     Project : Regression Testing</strong></td></div></tr>"
TextFile.Close

newMail.Subject = Subject
newMail.Body = Body
newMail.Recipients.Add(ToAddress)
newMail.Attachments.Add(strPath & "results.html") 'You can update attachment file name
newMail.Send
Set nAmeSpace = Nothing
Set oUtlookApp = Nothing

End Function

1 ответ

Если вы не укажете учетную запись для отправки, по умолчанию будет использоваться ваш первый почтовый ящик.

Я использую объект словаря EmailData указать детали для писем, которые я отправляю UFT, Если вы хотите, чтобы почта отправлялась из определенного почтового ящика, вам нужно определить соответствующий и установить MailItem"s .SendUsingAccount быть тем, кем ты хочешь.

Если запись в моем входящем словаре пуста, то по умолчанию используется первая учетная запись, к которой имеет доступ отправляющий пользователь (обычно это личная учетная запись). В противном случае он просматривает учетные записи, чтобы найти почтовый ящик, который должен использовать. Если он не существует, он завершает работу и сообщает, что у пользователя нет доступа к необходимому почтовому ящику.

В противном случае он устанавливает адрес для отправки как mailitem строится.

Дайте мне знать, если вам нужна дополнительная помощь в этом?

If EmailData("SendFrom") = "" Then
    ' default to first email account the user has access to
    LOG_Write "Send From value is not set; defaulting to user's personal mail account to send from."
    iAccount = 1
Else
    LOG_Write "Checking to see if the account to send from is accessible by this user..."
    iAccount = 0
    For iLoop = 1 To oOutlook.Session.Accounts.Count
        If UCase(Trim(oOutlook.Session.Accounts.Item(iLoop))) = UCase(Trim(EmailData("SendFrom"))) Then
            iAccount = iLoop
            Exit For
        End If
    Next
    If iAccount = 0 Then
        sErrorMsg = "Cannot send email from specified account: " & EmailData("SendFrom") & " as this user doesn't appear to have access to it in Outlook!"
        LOG_Write sErrorMsg
        OL_SendMail = False
        Exit Function
    End If
End If

Dim oMailItem : Set oMailItem = oOutlook.CreateItem(olMailItem)
With oMailItem
    Set .SendUsingAccount = oOutlook.Session.Accounts.Item(iAccount)
    .To = EmailData("To")
    .CC = EmailData("CC")
    .BCC = EmailData("BCC")
    .Subject = EmailData("Subject")
    .Body = EmailData("Body")
    sAttachArray = Split(EmailData("AttachmentPaths"), ";")
    For Each sAttachment In sAttachArray
        .Attachments.Add(sAttachment)
    Next
    .Recipients.ResolveAll
    .Display    ' debug mode - uncomment this to see email before it's sent out
End With
Другие вопросы по тегам