checking links

Descriptive Programming for Yahoo Login Page
SystemUtil.Run"iexplore","http://www.yahoomail.com"
Set g=Browser("name:=Yahoo.*").Page("title:=Yahoo.*")
g.WebEdit("name:=login").Set "aaa"
g.WebEdit("name:=passwd").SetSecure "bbb"
g.WebButton("name:=Sign In").Click
g.Link("name:=Inbox.*",
"html id:=WelcomeInboxFolderLink").Click
g.Link("name:=Sign Out").Click

SystemUtil.Run"iexplore","http://www.yahoomail.com" statement opens yahoo login page
aaa=username
bbb=password


This script is to check checkbox in yahoologin page


Set obj=Description.Create
obj("html tag").value="INPUT"
obj("type").value="checkbox"

set a=Browser("name:=Yahoo! Mail: The best web-based email!").Page("title:=Yahoo! Mail: The best web-based email!").ChildObjects(obj)

a(0).set"ON"

Set a=Description.Create
a("html tag").value="input"
a("type").value="checkbox"

Set b=Browser("name:=").Page("title:=").childobjects(a)
c=b.count
msgbox c

For i=0 to c-1
b(i).set "on"
Next

D.P for checkbox

Script to check whether yahoologinpage(www.yahoomail.com) checkbox is checked or not

Set g=Browser("name:=Yahoo.*").Page("title:=Yahoo.*")
Set obj=Description.Create
obj("htmltag").value="Input"
obj("ClassName").value="webcheckbox"
obj("type").value="checkbox"
Set a=g.childobjects(obj)
c=a(0).getroproperty("checked")
msgbox(c)
If c=0 Then
msgbox "checkbox is not checked"
else
msgbox"checkbox is checked"
End If





Descriptive Programming for Gmail Login Page


Browser("name:=Gmail.*").Page("title:=Gmail.*").WebEdit("name:=Email").Set "abc"
Browser("name:=Gmail.*").Page("title:=Gmail.*").WebEdit("name:=Passwd").SetSecure "xyz"
Browser("name:=Gmail.*").Page("title:=Gmail.*").WebButton("name:=Sign in").Click
Browser("name:=Gmail.*").Page("title:=Gmail.*").Frame("name:=v1")
.Link("name:=Sign out").Click






How to run QTP script from command prompt?

1) Set up the scheduler to invoke or execute the VBS File

2)make sure that you specify path




Dim qtApp 'As QuickTest.Application ' Declare the Application object variable
Dim qtTest 'As QuickTest.Test ' Declare a Test object variable
Dim qtResultsOpt 'As QuickTest.RunResultsOptions ' Declare a Run Results Options object variable

Set qtApp = CreateObject("QuickTest.Application") ' Create the Application object
qtApp.Launch ' Start QuickTest
qtApp.Visible = True ' Make the QuickTest application visible

' Set QuickTest run options
qtApp.Options.Run.CaptureForTestResults = "OnError"
qtApp.Options.Run.RunMode = "Fast"
qtApp.Options.Run.ViewResults = False
qtApp.Open , True ' Open the test in read-only mode

Set qtTest = qtApp.Test

qtTest.Settings.Run.IterationMode = "rngAll" ' Run only iterations 2 to 4
qtTest.Settings.Run.OnError = "NextStep" ' Instruct QuickTest to perform next step when error occurs
Set qtResultsOpt = CreateObject("QuickTest.RunResultsOptions") ' Create the Run Results Options object
qtResultsOpt.ResultsLocation = ' Set the results location

qtTest.Run qtResultsOpt ' Run the test




Function CheckLinks (BrowserObject, BrowserPage)
CheckLinks = True
sPage = "micclass:=Page"
Dim s_URL, i_CreationTime
Dim s_LinkOuterText, s_LinkInnerText, s_Linkhref
s_URL = BrowserPage.GetROProperty("url")
i_CreationTime = 1
i_LinkCount = BrowserPage.Object.links.Length - 1

Dim i_Link

For i_Link = 0 To i_LinkCount
If Trim(BrowserPage.Object.links(i_Link).target) = "" Then
'Set the link to open i a new window so that we dont
'have any change in current window
BrowserPage.Object.links(i_Link).target = "_blank"
End If

BrowserPage.Object.links(i_Link).click
On Error Resume Next
Browser("CreationTime:=" & i_CreationTime).sync
Browser("CreationTime:=" & i_CreationTime).Page(sPage).sync
On Error GoTo 0
Dim s_LinkDetails

IHTML = Browser("CreationTime:=" & i_CreationTime).Page(sPage).Object.Body.innerHTML
'Check if page was not able to be displayed
If (InStr(IHTML, "HTTP 404") <> 0) Or (InStr(IHTML, "cannot be displayed") <> 0) Then
s_LinkDetails = "Link Broken" + vbCrLf + "Link Details:" + vbCrLf
s_LinkDetails = s_LinkDetails + "OuterText: " + s_LinkOuterText + vbCrLf
s_LinkDetails = s_LinkDetails + "InnerText: " + s_LinkInnerText + vbCrLf
s_LinkDetails = s_LinkDetails + "href: " + s_Linkhref + vbCrLf
s_LinkDetails = s_LinkDetails + "Links Open in New Browse: " & bNewBrowser & vbCrLf
Reporter.ReportEvent micWarning, "Check Link(" & i_Link & ") -> " & s_LinkOuterText , s_LinkDetails
CheckLinks = FALSE
Else
s_LinkDetails = "Link Working" + vbCrLf + "Link Details:" + vbCrLf
s_LinkDetails = s_LinkDetails + "OuterText: " + s_LinkOuterText + vbCrLf
s_LinkDetails = s_LinkDetails + "InnerText: " + s_LinkInnerText + vbCrLf
s_LinkDetails = s_LinkDetails + "href: " + s_Linkhref + vbCrLf
s_LinkDetails = s_LinkDetails + "Links Open in New Browse: " & bNewBrowser & vbCrLf
Reporter.ReportEvent micPass, "Check Link(" & i_Link & ") -> " & s_LinkOuterText , s_LinkDetails
End If

Browser("CreationTime:=1").Close ' Close the link open.
Next
End Function

Function CheckLinks2 (BrowserObject, BrowserPage)
CheckLinks2 = True

sPage = "micclass:=Page"
sBrowser = "creationtime:="
Dim orgURL, orgCreationTime
Dim i_Link, l_hWnd
Dim b_newBrowser
Dim s_LinkOuterText, s_LinkInnerText, s_Linkhref

s_URL = BrowserPage.GetROProperty("url")
l_hWnd = BrowserObject.GetROProperty("hwnd")

i_CreationTime = 1

i_LinkCount = BrowserPage.Object.links.Length - 1

For i_Link = 0 To i_LinkCount

If Trim(BrowserPage.Object.links(i_Link).target) = "" _
And InStr(BrowserPage.Object.links(i_Link).href, "javascript:") = 0 Then
b_newBrowser = False
Else
b_newBrowser = TRUE
End If

s_LinkOuterText = BrowserPage.Object.links(i_Link).outerText
s_LinkInnerText = BrowserPage.Object.links(i_Link).innerText
s_Linkhref = BrowserPage.Object.links(i_Link).href

BrowserPage.Object.links(i_Link).click

'Doing Browser.Exist with CreationTime:=1 when the browser does not
'exist will give TRUE so i though of work around to compare the windows
'handle for the old browser and the new browser with CreationTime:=1.
'If they are same that mean no other window was opened.
If b_newBrowser Then
sBrowser = "CreationTime:=" & i_CreationTime
l_newhWnd = CLng(Browser(sBrowser).GetROProperty("hwnd"))
If CLng(l_hWnd) = l_newhWnd Then
b_newBrowser = False
End If
End If

On Error Resume Next
If b_NewBrowser Then
sBrowser = "CreationTime:=" & i_CreationTime
Browser(sBrowser).sync
Browser(sBrowser).Page(sPage).sync
Else
BrowserObject.sync
BrowserPage.sync
End If
On Error GoTo 0

Dim s_LinkDetails

If b_NewBrowser Then
sBrowser = "CreationTime:=" & i_CreationTime
IHTML = Browser(sBrowser).Page(sPage).Object.Body.innerHTML
Else
IHTML = BrowserPage.Object.Body.innerHTML
End If

'Check if page was not able to be displayed you can update this code any time
If (InStr(IHTML, "HTTP 404") <> 0) Or (InStr(IHTML, "cannot be displayed") <> 0) Then
s_LinkDetails = "Link Broken" + vbCrLf + "Link Details:" + vbCrLf
s_LinkDetails = s_LinkDetails + "OuterText: " + s_LinkOuterText + vbCrLf
s_LinkDetails = s_LinkDetails + "InnerText: " + s_LinkInnerText + vbCrLf
s_LinkDetails = s_LinkDetails + "href: " + s_Linkhref + vbCrLf
s_LinkDetails = s_LinkDetails + "Links Open in New Browse: " & bNewBrowser & vbCrLf
Reporter.ReportEvent micWarning, "Check Link(" & i_Link & ") -> " & s_LinkOuterText , s_LinkDetails
CheckLinks2 = FALSE
Else
s_LinkDetails = "Link Working" + vbCrLf + "Link Details:" + vbCrLf
s_LinkDetails = s_LinkDetails + "OuterText: " + s_LinkOuterText + vbCrLf
s_LinkDetails = s_LinkDetails + "InnerText: " + s_LinkInnerText + vbCrLf
s_LinkDetails = s_LinkDetails + "href: " + s_Linkhref + vbCrLf
s_LinkDetails = s_LinkDetails + "Links Open in New Browse: " & bNewBrowser & vbCrLf
Reporter.ReportEvent micPass, "Check Link(" & i_Link & ") -> " & s_LinkOuterText , s_LinkDetails
End If

If b_NewBrowser Then
sBrowser = "CreationTime:=" & i_CreationTime
While CLng(Browser(sBrowser).GetROProperty("hwnd"))<>l_hwnd
On Error Resume Next
Browser(sBrowser).Sync
Browser(sBrowser).Page(sPage).Close
On Error GoTo 0
Browser(sBrowser).Close
'Tackle links that open a new browser and also opens a popup using that
'i_CreationTime=i_CreationTime + 1
Wend

i_CreationTime = 1

Else
On Error Resume Next
BrowserObject.Navigate s_URL
BrowserObject.Sync
BrowserObject.Page.Sync
On Error GoTo 0
End If
Next
End Function

'********************* In QTP **************
Set BrowserObject = Browser("micClass:=Browser", "CreationTime:=0")
Set BrowserPage = BrowserObject.Page("micClass:=Page")
CheckLinks2 BrowserObject, BrowserPage

No comments: