Link to download & install Microsoft Scritp Debugger is -
A blog on Selenium WebDriver, Java, VB Script, Software Testing, SOAPUI, Groovy, SOA Testing, Mobile Testing, Appium etc.
Wednesday, 31 July 2013
QTP :- What is Objects Collection object, How do we refer to an item in objects collection, How do we send keyboard input?
Object Collection - It is a generic term and not a keyword. This is something like an array that holds a collection of objects.. So its an array of objects..
How do you refer to an item in it - Since this is an array, it will be accessed the same way you do for an array, i.e. bu using its index.Example: Assume you have a page with 20 links where the link text and URL are dynamically loaded. Suppose you want always have to click the 7th link.. Code is as follows -
Set oDesc = Description.Create
oDesc("micclass").Value = "Link"
Set oAllLinks = Browser("").Page(""). ChildObjects(oDesc) 'Here oAllLinks is the collection of Objects
'Click on 7th link
oAllLinks(6).Click 'Array index starts from 0. So index 6 is used
Sending Keyboard Input - This can be done using SendKeys command. Code is as follows -
Set WshShell = CreateObject(“WScript.Shell”)
WshShell.SendKeys "hp quicktest professional"
Wednesday, 24 July 2013
How to Do Performance Testing Estimation (Load Runner)
LR Script Creation: For a full script creation (which includes recording and customization), script creation may take from 3hr to a day or two. Time requirement mainly depends on:
- complexity of the flow
- values to be parameterized
- frequency of dynaminc values that are to be customized.
I would recommend before start on script recording, test person should spend atleast 1-2 days in understanding the application and flow(s) that is/are to be recorded and executed, identifying test data requirements and workflow dependencies (any). (You may include this as part of test efforts estimation)
LR Script Execution: Execution efforts should include time to:
- Create and setup of Test load scenarios (Average, peak load scenario, etc) as per requirements.
- Set up test data (this test data is similar. However, quantity is different depending on testing time range)
- Execute individual script on controller (directed to actual performance test environment) for small cycles to remove/fix run-time issues.
- Execute average test load scenario / individual script for small cycles to remove/fix run-time issues before executing full range tests. This is very important to prevent unwanted issues during full range tests.
- Test result analysis and reporting.
- If scripts are using ‘destructive data’, include time for creation of test data between test cycles.
Also, few things to keep in mind:
- Average or Normal Load Test execution cycle should be atleast 3 with 2-3 full range test executions within each cycle. Normally, Normal Load Test execution is 1 hr per test run.
- Any performance issues / application issues observed should be fixed before start of next cycle.
- Peak Load and other test load scenarios should be executed once Normal (Average) load test(s) gives positive results.
- Scenario Run-time for Normal (Average) and Peak loads should be similar
- Make sure, you have enough Vuser license to simulate load conditions, as per NFRs.
An Introduction of Mobile Testing Strategy
Product Vision: First of all it is very important to gauge and understand the vision related to the product/application under consideration. Some points to look at:
Who are the users/future users?
What platforms/OS’s are we targeting? Are we looking at only iOS users (What versions?), Android (What versions?)
QA Budget: Is it fixed or flexible?
Simulators Vs. RDA’s: Based on the above factors I would look at options of using Actual Device/Simulators/RDA’s.
If the horizon of platforms/OS’s is limited then I would look at my budget and most likely would opt for actual devices for testing.
Simulators always play big role when there are no mobile devices available for testing. Though Device testing is always preferred as it represents more likely end user scenarios, the importance of simulators cannot be ignored. In order to have effective testing over Simulator, It is recommended to explore all the capabilities of Simulator. Eg. Ipadian is a simulator for Ipad.
If you feel the breadth of mobile devices is large then you may opt for Remote Device Access Services; Due to a large number of devices available in the market, it is not feasible to buy a new device every time. At the same time Simulators are not completely reliable enough to launch a mobile app based on testing conducted only on simulators. RDA (Remote device services) can be a good solution to deal with these challenges. The remote device access services enable access to a live device over the Internet.
Some Available RDA Services are:
- Device Anywhere (Paid)
- Perfecto Mobile (Paid)
- Nokia RDA (Free, For Symbian Phones)
Advantages of RDA:
- You don’t need to purchase actual device.
- User can select different Carriers e.g. Verizon, T-Mobile, AT & T.
- RDAs are more reliable than simulators as they are real devices.
- Some RDA Service like Device Anywhere also has automation capabilities.
Disadvantages of RDA:
- Since you access devices remotely it takes time for any action or key event.
- Sometimes the needed device is not available due to prior reservations.
- Higher Service Cost
What is Retesting
- It is testing the fixed bug ONLY. This happens while closing resolved bug.
- Retesting is done to validate for the particular fix in a build means just execute “STEPS TO REPRODUCED” and find that bug is fix or not.
- Conducting testing on same application with same kind of inputs again and again is called re-testing.
What Types of License is Available for QTP
There are two type of licenses available for QTP
Seat License: It is a machine locked license. This license can be used only for a machine it was generated.
Floating License: It can be used on any machine which has network access to the floating license server. At any point in time the machines using the QTP license cannot exceed maximum license count on the server.
What is HP QuickTest Professional or QTP
HP QuickTest Professional is a solution for functional test and regression test automation. This next-generation automated testing solution deploys the concept of keyword-driven testing to enhance test creation and maintenance. Keyword-driven testing is a technique that separates much of the programming work from the actual test steps so that the test steps can be developed earlier and can often be maintained with only minor updates, even when there are significant changes in your application or your testing needs.
Using the keyword-driven approach, test automation experts have full access to the underlying test and object properties, via an integrated scripting and debugging environment that is round-trip synchronized with the Keyword View.
QuickTest Professional meets the needs of both technical and non-technical users. It works hand-in-hand with HP Business Process Testing to bring non-technical subject matter experts into the quality process in a meaningful way. Plus, it empowers the entire testing team to create sophisticated test suites.
Tuesday, 23 July 2013
PowerDebug 2.10 – Now a FREE Add-on Debugger for QTP
PowerDebug is a add-on debugger for QuickTest Professional. PowerDebug takes over the QTP debugging IDE and provides a new enhanced with many new features that QTP IDE doesn’t have. Below is the list of features
- Debug code loaded using statements ExecuteFile, Execute and ExecuteGlobal
- Enhanced error messages with complete stack trace of the error
- Pause execution using Assertion points
- Enhanced command window with option to execute multiple line command
- Enhanced output window with option to save the log to file
- Implement Goto statements in code
- Jump to any code statement during debugging
- Accessing current scope information like FunctionName, Caller function and stack trace
Difference Between Close() and Quit() in Selenium WebDriver
Close() closes the current active browser window.
Quit() closes all browser windows open on desktop.
Quit() closes all browser windows open on desktop.
If only one browser window is open, close() & quit() function works in same way.
How to Do Mouse Right Click Action Through Code
Browser(”Browser”).Page(”Page”).WebTable(”table”).FireEvent “onclick”,,,micRightBtn ‘Right clicking on the object
How to Select Option from Popup After Mouse Rightclick
Code is as follows -
Browser(”Browser”).Page(”Page”).WebTable(”table”).FireEvent “onclick”,,,micRightBtn ‘Right click on the webtable
Set myShell = CreateObject(”WScript.Shell”) ‘create instance of Shell Object
myMenu = 5 ‘Option number from floating menu
For i = 1 To myMenu
WshShell.sendkeys “{DOWN}” ‘Navigate to the menu item
Next
WshShell.sendkeys “{ENTER}”
Set myShell = nothing
Browser(”Browser”).Page(”Page”).WebTable(”table”).FireEvent “onclick”,,,micRightBtn ‘Right click on the webtable
Set myShell = CreateObject(”WScript.Shell”) ‘create instance of Shell Object
myMenu = 5 ‘Option number from floating menu
For i = 1 To myMenu
WshShell.sendkeys “{DOWN}” ‘Navigate to the menu item
Next
WshShell.sendkeys “{ENTER}”
Set myShell = nothing
Monday, 22 July 2013
Selenium :- What is the difference between get() and navigate() methods
get("http://www.google.com") - navigate to a Web page. WebDriver will wait until the page has fully loaded (that is, the onload event has fired) before returning control to your test or script. It’s worth noting that if your page uses a lot of AJAX on load then WebDriver may not know when it has completely loaded.
Navigation().to("http://www.google.com") : It also navigate to a web page.
Conclusion :- navigate().to() and get() do exactly the same thing. One's just a lot easier to type than the other. The navigate interface also provides the ability to move backwards and forwards in your browser’s history:
- driver.navigate().forward();
- driver.navigate().back();
QTP - Click on Menu Operation
For example menu is File -> New -> Blank if it is a VB application then
VbWindow(”WindowName”).WinMenu(”MenuName”).Select “File;New;Blank”
If it is a web application then
browser(”brows1”).page(“page1”).webmenu(“menu1”).Select “File;New;Blank”
Code to Find Email on Basis of Subject & then Open Email
rows = Browser(”name:=Gmail – Inbox”).page(”title:=Gmail – Inbox”).webtable(”html tag:=TABLE”,”name:=t”).GetROProperty(”rows”)
set op=Browser(”name:=Gmail – Inbox”).Page(”title:=Gmail – Inbox”).webtable(”html tag:=TABLE”,”name:=t”).childobjects(objects)
op(i).Click
Exit For
End if
Next
a = Browser(”name:=Gmail – Inbox”).page(”title:=Gmail – Inbox”).webtable(”html tag:=TABLE”,”name:=t”).GetCellData(i,2)
print(a)
If a =”xyz” Then
Set objects=Description.Create
objects(”html tag”).value=”A”
objects(”name”).value=”t”
Overview of Selenium IDE Plug-in
Selenium IDE Plug-in which I have recently seen and used it.
Screenshot on Fail Plug-In: This plug-in for Selenium-IDE automatically takes a screen-shot when a command fails while running the test suite. So you have the screenshot of the page where your test script is getting failed.
Page Coverage Plug-In: This plug-in for Selenium-IDE generates page coverage reports highlighting areas of a web page touched by the Selenese test cases / test suites.
Test Results Plug-In: This plug-in for Selenium-IDE saves the results of the test execution for the test suite and included test cases with a single click. It also allows you to export the test results for individual test cases
Highlight Elements Plug-In: This plug-in for Selenium-IDE highlights elements specified in the Selenese commands on the web page as the test case is executed. Once this plug-in is installed, a Highlight elements button will be available on the Selenium-IDE main window and Sidebar
Selenium : How to Check That Button is Enabled
Use the WebElement#getAttribute() method to query the “disabled” attribute on the element, like this in Java:
element.getAttribute(”disabled”)
Since getAttribute() returns a String object, you can encapsulate that using Boolean.parseBoolean() to get a boolean value: Another solution is using isEnabled() method
WebElement.isEnabled() – Returns True if button is enabled else False.
Performance Testing Tool Comparison
LoadRunner/JMeter can be good options.
LoadRunner:
LoadRunner:
Advantages:
- Industry standard performance testing tool, provides quick performance feedback
- You can reliably scale up to thousands of users and get accurate results
- Specifically for web services, the response XML can be analysed and a good level of functional validation of response XMLs can be performed
Disadvantage:
- Licensing is costly.
JMeter:
Advantages:
- Open Source
Disadvantages:
- Results, reports from JMeter are not comparable with the same obtained from LoadRunner.
QTP : Search & Click on a Image Using Descriptive Programming
Code is as follows -
Set IMGCollection = Browser().Browser().Object.getElementsByTagName(”IMG”)
TotalIMGCount = ImageCollection.length
For i = 0 to (TotalIMGCount -1)
If IMGCollection(i).src = “https://www…abc.png” Then
IMGCollection(i).click
Exit For
End If
Next
Set IMGCollection = Browser().Browser().Object.getElementsByTagName(”IMG”)
TotalIMGCount = ImageCollection.length
For i = 0 to (TotalIMGCount -1)
If IMGCollection(i).src = “https://www…abc.png” Then
IMGCollection(i).click
Exit For
End If
Next
HP QTP :- Read the Text from Picture Pasted in Powerpoint
Code to read text from picture from power point slide –
msgbox Window(”***”).Window(”***”).WinObject(”***”).GetVisibleText
Note - Make sure Single Text Block mode is enabled, Go to [Tools > Options > Text Recognition > Multiple Text Block Mode] & select [Single Text Block Mode]
What is the Step to Export Defects from JIRA to QC
- Extract of all the JIRA defects you want to move.
- Modify the fields according to that in QC (For example : In JIRA, the defect severity is bifurcated by digits-1,2,3,4. However, In QC you need to have it like 1-Critical, 2-High, 3- Medium, 4-Low .) Thereafter, you just need use the QCMSExcelAddin to do one-to-one mapping of each excel spreadsheet column to the desired field in QC (For example if Column A of the spreadsheet has the defect summary then it needs to be mapped to the defect description field of the QC ). Or
there is also a low-cost Plug-in tool (JaM Plug-in) that can be implemented to replicate defects between QC
and Jira. You have to install and can configure on what conditions Jira defects should be replicated to QC to
make it as an automated process. You don’t need to manually export/import defects.
How to Qualify Quality Center Certification
HP Quality Center latest version of certification is 10. A certification cost is 3300 INR. Regarding test center, go to any Pro-metric Center from, register yourself & appear in Online exam.
Apple IOS Simulator As Firefox Add in (No Need of Installer)
- Install Firefox extension User Agent Switcher 0.7.3
- Save the attached XML on your Desktop.
- Click on Tools -> Default User Agent -> Edit User Agent
- Click Import and open the attached XML from your Desktop.
- Click OK
- Open a new tab and go to path [Help -> Mobile Devices -> OS] & Select iOS and Select a version or Select a Device for the specific issue
Note – UI issues can be identified however cannot be completely confirmed using this simulator, however the tool is handy in finding the related functional issues.
Can also use iPhone tester (http://www.iphonetester.com/) in safari browser, this is online simulator no need to download.
Friday, 19 July 2013
Selenium WebDriver : Implementing Hover Using Mouse
Code for hover using mouse is as follows -
public static void mouseOverOnElement(WebElement tagElement)
{
try
{
System.out.println(”mouseOverOnElement Starts ->”);
Actions builder=new Actions(driver);
Point coordinate=tagElement.getLocation();
Robot robot=new Robot();
builder.moveToElement(tagElement, 5,5).build().perform();
builder.moveByOffset(1, 1).build().perform();
robot.mouseMove(coordinate.getX()+15,coordinate.getY()+104);
Thread.sleep(3000);
System.out.println(”mouseOverOnElement Ends ->”);
}
catch(Exception e) { }
}
QTP 10 Supports Windows 7
HP announced the support for Windows 7 and Windows Server 2008 R2 for QTP10. (Though there is no such information about the versions of QTP prior to 10.0) You would need to download this patch (requires HP support login credential)
Selenium IDE - Run script on Internet Explorer, Chrome , htmlunit, iPhone , Opera
Steps to run script on Internet Explorer browser using Selenium IDE
- Install Selenium IDE 2.0 or higher version add-in on your machine.
- Launch Firefox browser & Go to Tools -> Selenium IDE or Pres Crtl+ Alt + S on keyboard
- Click on Options -> Options -> WebDriver
- Click checkbox "Enable WebDriver Playback"
- Enter value "internet explorer" in Input box
- Click on Ok button
- Run command prompt
- Go to folder where selenium server.jar is stored
- Run command java -jar selenium-server-standalone-2.25.0.jar
- Go back to Selenium IDE & click on run button
- Test may not pause or exit on errors.
- Executing a single command is not yet supported.
- Highlighting a locator using the Find button may not work.
- Screenshots may not work.
- User extensions and plugins may not work.
History Of Selenium
In 2004, an engineer with ThoughWorks, Jason Huggins developed a JavaScript library that could drive interactions with the page, allowing him to automatically rerun tests against multiple browsers. Later on this library eventually became Selenium Core, which underlies all the functionality of Selenium Remote Control (RC) and Selenium IDE. Selenium was ground-breaking because no other product allows to control a browser from a language of your choice.
In 2006 an engineer named Simon Stewart at Google started work on a project WebDriver. Objective was to build a testing tool that spoke directly to the browser using the ‘native’ method for the browser and operating system, thus avoiding the restrictions of a sandboxed JavaScript environment.
In 20011, Selenium and WebDriver was merged, a product named – Selenium 2 or Selenium WebDriver was released. Selenium 2 has clean and object-oriented APIs from WebDriver and interacts with browsers using their native method. Selenium 2 does not use a JavaScript sandbox, and it supports a wide range of browsers and multiple language bindings.
WebDriver uses browser-native control mechanisms to execute its tests, rather than relying solely on JavaScript, as Selenium does. WebDriver manifests as an extension in Firefox and uses the Internet Explorer automation controls, resulting in a more versatile testing tool than Selenium.
How To Take A Screenshot
#SeleniumWebDriver #TakeScreenshot #TheBuddhaTree
The Problem
When we do nightly test execution, we need
historical evidence to analyze & debug script failure. Sometime, it can be challenging
to track down the issue that caused a failure using failure message along with
stack trace. Especially when you run the test again and it passes.
A Solution
A simple way to gain insight into your test failures is to capture screenshots of AUT at the moment of failure and add the screenshots into test execution result.
How to Implement using Selenium
Selenium WebDriver
provides the TakesScreenshot interface for capturing a screenshot of a web
page. This helps in test runs, showing exactly what happened when an exception
or error occurred during execution, and so on.
TakesScreenshot interface provides the getScreenshotAs()
method to capture a screenshot of the page displayed in the driver
instance. Example code is as follows –
import java.io.File;
import
java.io.IOException;
import
org.apache.commons.io.FileUtils;
import
org.openqa.selenium.OutputType;
import
org.openqa.selenium.TakesScreenshot;
import
org.openqa.selenium.WebDriver;
import
org.openqa.selenium.firefox.FirefoxDriver;
import
org.testng.annotations.Test;
public class
TakeScreenshotOfApplication {
WebDriver driver;
@Test
public void compareTitle() {
driver = new
FirefoxDriver();
driver.get("http://google.co.in");
// compare title
& take screenshot of application if it fails
if
(driver.getTitle().contains("facebook")) {
System.out.println("Title
matched!!");
} else {
System.out.println("Title
did not match");
takeScreenshotMethod();
}
}
private void
takeScreenshotMethod() {
// code to take
screen shot of browser
File scrFile =
((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);
// file name
where image to be saved
String
screenshotpath = "C:\\google.png";
try {
//
save image to drive
FileUtils.copyFile(scrFile,
new File(screenshotpath));
} catch
(IOException e) {
e.printStackTrace();
}
}
}
Expected Behavior
- Load the URL
- Take Screenshot
- Save Screenshot Image to local drive
Happy Learning
Selenium : Input and Output Values From/to Excel
1. Input and output values from/to excel.
Use the apache POI API to connect and manipulate excel : – http://poi.apache.org/apidocs/index.html
Use the apache POI API to connect and manipulate excel : – http://poi.apache.org/apidocs/index.html
Selenium Tool Suite - A Brief Introduction
Selenium suite is comprised of multiple software
components, they are as follows -
Selenium 2 or Selenium WebDriver – It is a product of merger between
Selenium & WebDriver. It supports the WebDriver API, along with the
Selenium 1 technology. WebDriver is a tool for writing automated tests of web
based applications. It aims to emulate the behavior of a real user, and as such
interacts with the HTML of the application. It provides object oriented support
& WebDriver API. This is latest/ newest addition in Selenium family.
Selenium 1 or Selenium RC or Remote
Control – It allows
to write automated web application UI tests in any programming language (Java,
JavaScript, Ruby, PHP, Python, Perl and C#) against any HTTP website using any
mainstream JavaScript-enabled browser. It comes in two parts.
- A server
which automatically launches and kills browsers, and acts as a HTTP proxy
for web requests from them.
- Client
libraries for your favorite computer language.
It is suitable for testing complex
AJAX-based web user. It is also an ideal solution for users of Selenium IDE who
want to write tests in a more expressive programming language than the Selenese
HTML table format.
Selenium IDE – Selenium IDE (Integrated Development
Environment) is a rapid prototyping tool for building test scripts. It is a
Firefox plugin and provides an easy-to-use interface for developing automated
tests. Selenium IDE has a recording feature, which records user actions as they
are performed and then exports them as a reusable script in one of many
programming languages that can be later executed.
It is not designed to run your test
passes nor is it designed to build all the automated tests you will need. It
doesn’t provide iteration or conditional statements. It is recommended that for
scalable & robust test automation use Selenium 2 or Selenium RC.
Selenium-Grid – Selenium-Grid facilitates to run test
suites in multiple environments simultaneously. It allows executing tests in
parallel, that is, same or different tests can be run at the same time on
different remote machines. It benefits in following ways –
- Suppose
there is a large test suite, or a slow-running test suite, you can boost
its performance substantially by using Selenium Grid to divide your test
suite to run different tests at the same time using different machines.
- Suppose
requirement is to run test suite on multiple environments, you can have
different remote machines supporting and running your tests in them at the
same time.
In both situations, Selenium Grid
reduces execution time.
QTP 11 Support for Google Chrome Browser
Download and install the patch QTPWEB_00088.EXE available at HP’s support site.
Some important points to note:
- This patch only provides replay support and not record support on Google Chrome.
- It won’t support multiple tabs or multiple browsers in Google Chrome as available on Firefox/IE
- These web environment are not supported yet. SAP Web, Siebel, Java,.NET WebForms. Web Extensibility based test objects won’t work either.
- These methods are not supported on Google Chrome
a) Browser.Home
b) Browser.FullScreen
c) Browser.ClearCache
d) Browser.Object
QTP 9.2 Support for on IE – 8 and IE-9
The only way to get QTP 9.2 to work with IE8 is to turn off “Active X” plugin. (taken that your script does not need “Active X”). Otherwise QTP 10 and above supports Win 7 and IE8.
Try it out. Create a simple test like opening IE8 but without “Active X” plug in, and you will see that it opens IE8 perfectly. Now do the same but with “Active X” plug in, you will see the crash.
Set objIE = CreateObject(”InternetExplorer.Application”)
objIE.Visible = True
objIE.Navigate2 http://www.google.com/
Introduction to Selenium
Selenium is an open-source cross-browser test automation tool which support automation of web application. It is an extremely powerful tool for running end-to-end functional tests. It provides feature for locating UI elements and comparing expected test results against actual application behavior. It allows writing tests in several programming language & supports for executing test script on multiple browser platforms. It is implemented entirely with browser technology (JavaScript, DHTML, Frames). It identifies objects by looking at the DOM.
Thursday, 18 July 2013
How to Choose the Right Selenium Tool for Your Need
If you are a new user or don’t have knowledge of programming/scripting language or have to do proof of concept (POC or Demo), it is suggested to start with Selenium IDE. Using the IDE you can create simple tests quickly. Selenium IDE record & playback UI, is useful in getting familiarity with selenium commands, in training new resources and creating sample automation script.
To build a functional/regression automation suite, use Selenium WebDriver in conjunction with one of the supported programming languages (like Java, Perl, C# etc).
Selenium WebDriver : How to Handle JavaScript Alerts and Prompts
Selenium 2 provides Alerts API, to work on pop & alert window –
// Get a handle to the open alert, prompt or confirmation
Alert alert = driver.switchTo().alert();
// Get the text of the alert or prompt
alert.getText();
// And acknowledge the alert (equivalent to clicking “OK”)
Wednesday, 17 July 2013
QTP - How to skip the Errors/Warning in the Test Results
User can use Reporter object in QTP to skip the Errors/Warning - Just before statement put this code
Reporter.Filter = Desired Mode
'Desired mode' is what you expect reporter Object to do. In your case 1 (rfEnableErrorsOnly) would do.
0 or rfEnableAll: This is the default mode. All reported events are displayed in the Test Results.
1 or rfEnableErrorsAndWarnings: Only those events with a warning or fail status are displayed in the Test Results.
2 or rfEnableErrorsOnly: Only those events with a fail status are displayed in the Test Results.
3 or rfDisableAll: All events in the Test Results are disabled.
0 or rfEnableAll: This is the default mode. All reported events are displayed in the Test Results.
1 or rfEnableErrorsAndWarnings: Only those events with a warning or fail status are displayed in the Test Results.
2 or rfEnableErrorsOnly: Only those events with a fail status are displayed in the Test Results.
3 or rfDisableAll: All events in the Test Results are disabled.
Tuesday, 16 July 2013
QTP 11 Support for Firefox Browser
Firefox Versions QTP 11 Patches Download Link
Version 3.6 QTPWEB_00063
Version 4, 5, 6, 7, 8 QTPWEB_00090
Version 9, 10, 11 QTPWEB_00092
Version 12 QTPWEB_00100
Version 13, 14 QTPWEB_00105
Version 15 QTPWEB_00112
Once you install any of the patches above, ensure that Firefox add-in for QTP 11 is installed and enabled under Tools -> Addons.
Monday, 15 July 2013
Tool That Hits Site from Different Country IP
“pingdom.com” is an online tool which is a website monitoring tool for hitting sites from different country servers. You will also receive Performance/Response time reports at your registered e-mail ID (weekly, Daily, Monthly as selected).
Another tool is http://www.monitor.us/ which is also used for Tracking website availability and performance from different locations in major countries and traffic destinations. Just give it a try.
Above said two tools are useful in situation when you are implementing IP filtering on your site, where you are redirecting global site to local country site
Selenium WebDriver : How to Maximize a Window
Code is as follows –
driver.manage().window().maximize();
Note – driver variable contains reference of browser object
Friday, 12 July 2013
How to handle firefox download pop up in Selenium Webdriver
Go to Firefox -> Options -> Applications and in this, search for that type of application for example "Microsoft Excel" and change associated Action type to from "Ask " to "Save File"
Firefox will not ask for download prompt.
What is Quick Test Professional Step Generator
The Step Generator box enables you to add steps that perform operations, using test object methods (for tests only), Utility object methods, or function calls.
Go to Insert -> Step Generator or Press F7 on keyboard to enable Step Generator dialog box.
Go to Insert -> Step Generator or Press F7 on keyboard to enable Step Generator dialog box.
Thursday, 11 July 2013
Does Selenium WebDriver Support Multiple Instances of the WebDriver Sub-classes
Each instance of an HtmlUnitDriver, ChromeDriver and FirefoxDriver is completely independent of every other instance. In the case of Firefox and chrome, each instance has its own anonymous profile it uses. There is a limitation with InternetExplorerDriver, at a time it could have only single instance at one time. You can use RemoteWebDriver and virtual machines if you want to create more than one instance of InternetExplorerDriver.
Pros and Cons of Using Selenium Web Driver
Pros
- Allows for the WebDriver and Selenium APIs to live side-by-side
- Provides a simple mechanism for a managed migration from the Selenium RC API to WebDriver’s
- Does not require the standalone Selenium RC server to be run
Cons
- Does not implement every method
- More advanced Selenium usage (using “browserbot” or other built-in JavaScript methods from Selenium Core) may not work
- Some methods may be slower due to underlying implementation differences.
Wednesday, 10 July 2013
Selenium :- How to Open Chrome Browser
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class chrome1 {
public static void main(String[] args)
{
System.setProperty("webdriver.chrome.driver","D:\\Chrome\\chromedriver.exe"); //path of
import org.openqa.selenium.chrome.ChromeDriver;
public class chrome1 {
public static void main(String[] args)
{
System.setProperty("webdriver.chrome.driver","D:\\Chrome\\chromedriver.exe"); //path of
chromeDriver.exe file
WebDriver driver = new ChromeDriver();
driver.get(" http://yahoo.com ");
}
WebDriver driver = new ChromeDriver();
driver.get(" http://yahoo.com ");
}
}
Subscribe to:
Posts (Atom)