Skip to main content

Posts

Showing posts from 2011

Test Management Tool Integration

Lot of testers are involved in integration of test management tools with automation tools to read and execute the cases and finally updating the results back to test management tool.  Here are the some info. The below link will help you to integrate HP Quality Center with other tools http://qtpcodes.blogspot.com/2011/10/retrieve-values-from-quality-center.html Integrate Test Link with other tools ---------will continue here....

Java - Technology and API Overview

Java UI Technologies: Java AWT Java Foundation Classes(JFC)/Swing  Java SWT JavaFX JavaServer Faces (JSF) Java Server-Side  Technologies : Java Servelets  JSP (Java Server Pages) Enterprise Java Beans (EJB) Apache Struts Apache Spring Java Communication Technologies: Java Message Service (JMS) JavaMail API - for Mail purpose Data Access Technologies: JDBC  XSSF - API used to access Microsoft office products Java Hibernate - API used for Object/Relation data mapping. Still continues here...

WebServices and Related Terms

In today's world, daily everyone is hearing terms like Web Service, XML-RPC, SOAP, SOA etc. So what are these things? Where we are using? How this is helpful in software applications? Let's start a simple discussion here. WEB SERVICE: A webservice is nothing but some piece of software over internet / intranet without UI. For example, I need a method to add 2 numbers. So I am developing a method " addNumbers " locally. But this method is in our local code and its complied as exe or JAR file, no others can use it if anyone wants the same functionality.  If I published this method in common repository, anyone can use by knowing this method signature and how to access them. This is webservice.  - WebService can be published on internet or intranet.  - Its language independent. ie. WebServices can be written in any language and accessible from any language. - Platform Independent ie. published on any webserver and accessible from any OS. - No need of UI technolo

JMeter - Beginner's Tutorial

This is a basic tutorial explains how to start with JMeter and how to use for basic load testing. Also it covers a flow which is mostly used across industries. You can get lot of clear help here. JMeter Help JMeter supports HTTP, HTTPS, FTP, SOAP and LDAP and it can be Integrated with selenium to do extensive use. Here are the flow to start your Load Testing. Creating Tests: 1. First, Add Proxy (Under Workbench >> Non-Test Elements). This Proxy only acts as a recorder. So don't forget to start the proxy before recording. Also after finished recording, stop the Proxy. 2. Add Controller. (Under Workbench >> Logic Controllers >> Simple Controller). This Controller is nothing but a container(mainly used for grouping). Inside a controller you can have your requests. ie. Transactions 3. Now record your transaction and drag it under your controller. 4. Add ThreadGroup (Under TestPlan) and group the recorded requests(or controllers) under thread group. Its f

Cloud Computing Vs SaaS, PaaS and IaaS

Lot of peoples have some confusions about what is Cloud? If so then what is SaaS? I will discuss about this topic with information I have. Basically  Cloud Computing refers some computing operation over internet, it may be any kind of service. Under this we have different models according to industry requirements. They are, Software as a Service Platform as a Service Infrastructure as a Service Software as a Service - SaaS:  SaaS refers simply access to an software application via internet on our client browser or any kind. It may be any kind like hosted in own environment or hosted in third party environment.  Its related directly to end users. Ex . Gmail, Google Docs etc. Platform as a Service - PaaS: PaaS refers access to a platform that provides capabilities to develop and test software applications via internet. Its related to developers and testers who creates the software application. Ex.  Force.com(by SalesForce.Com), Google App Engine, Windows Azure

Mobile Testing - Kinds of testing carried out on a Mobile app

In today's world, without mobile (especially Smart Phone) nothing moves for every one. As mobile phone users are growing well, mobile market is on the boom. Obviously Mobile testing is an important area for today's software testers. So how to start mobile testing? What kinds of testing will be carried out on a mobile application? Basically 4 types of mobile application is there. 1. Native application (Installable / Un-Installable) 2. Native application (Not Installable / Un-Installable, comes with device) 3. Web application (optimized with m.domain.com ) 4. Applications work using WAP So, have to execute many type of testing based on the application area, domain etc. This document will give you all kinds of testing. You can execute all or selective tests for your mobile application. http://unifiedtestinginitiative.org/files/utc_android_v1.pdf As we know, lot of automation tools supporting mobile testing. Something, 1. QTP 2. TestComplete 3. SeeTest Studio 4. K

Continuous Integration vs Version Control

Most of new techies have a doubt on What is Continuous Integration? and What is Version Control? What's the relation between them?  I want to explore and discuss something about this topic here. Actually Continuous Integration(CI) is more than Version Control (VC). Version control is simply for maintaining different version of docs or files while users committing changes to common repository. But CI is far more than that. CI is fully related to automation  o application build and deployment activities. Continuous Integration: CI is a system which is used t automate our building and deployment process. At any time, the executable are ready (to test or to production) with workable condition. It includes, 1. Maintain a code repository Common shared repository to maintain code. Actually its Version Control system. 2. Automate the build Using available code in common repository, system will do building process to generate executable. This building process will be done autom

Use JQuery locators in Selenium

Hi all, As we all know, Xpath locators are always slow we are going for CSS locators. To simplify and extensive use of CSS, JQuery locators will help as its using css concept. I have found a useful link to achieve this.  JQuery Locators In Selenium Hope this will give you some ideas...

Automate testing of Flex / Adobe AIR application

Hi, Automating special kind of UIs are always some complex and still more tools are keep on providing add-ons to support special UIs like Flex, SilverLight, etc. We have some good tools to automate flex  applications easily.  Lot of tools in market providing flex and silverlight support like market giants QTP, TestComplete, RFT etc. Here are some other tools you can make, Commercial Tools: 1.  RIATest Its a nice and simple tool which have good set of features and reporting. Its desktop application which can be used to automate adobe AIR, flex and windows based applications.  2. RanoRex RanoRex is a good tool but not got famous. Its Object identification is fully XPath like concept for both Web and Desktop apps called RanoreXPath. It have Object Spy, Object Repository, Recorder and PlayBack and good reporting like QTP. OpenSource Tools: 1.  FlexMonkey   Its a open source adobe AIR application which provides record and playback support for flex, AIR applicati

Sizzle - JQuery Based Selector Engine for Selenium

Hi all, Here I want to speak about a well-designed jquery based selector engine which we can use to find web elements easily with manu available options. Sizzle  is custom designed selector engine. It provides many easy-of-use features to find complex web elements easily.  You can find more options from HERE . You can download sizzle from here. Download

Top Security Testing Resources / Tools

A big community called "OWASP - Open Web Application Security Project" releases information about  software vulnerabilities for every year. Also you can learn lot of concepts here. Here I have done listing of some security testing tools known, Commercial Tools: IBM Rational AppScan HP QA Inspect HP WebInspect HP Fortify Cenzic Hailstorm OpenSource Tools: WebScarab by OWASP community BurpSuite SkipFish - by Google

Some good Resources / Blogs / Sites for Selenium Users

Here I have listed out some good blogs and sites by extensive selenium automation users. Hope these will help you a lot. http://automationtricks.blogspot.com  - by NirajKumar http://www.theautomatedtester.co.uk/ http://testerinyou.blogspot.com   - by Naga/Mathu http://seleniumready.blogspot.com  - by Farheen Khan http://seleniumdeal.blogspot.com/  - Amit Vibhuti http://seleniumexamples.com/blog Sauce Labs and BrowserMob are companies doing cloud and extensive selenium automation services, products, etc http://saucelabs.com/blog http://blog.browsermob.com http://testingbot.com/ Cedric Beust -  creator of the TestNG Java testing framework. http://beust.com/weblog/ http://blog.reallysimplethoughts.com/  - by Samit Badle, Created many Selenium IDE Plug-Ins Available Colud Testing: 1. SauceLabs 2. Soasta 3. BrowserMob 4. CloudTesting.com  etc. Selenium Testing Products: 1. Twist by ThoughtWorks 2.  TestMaker by  PushToTest 3. Element34 company providi

Selenium - waitForCondition with JavaScript Expressions

Selenium provides select method to select an item/option from drop-down lists and comboboxes. But this will work for simple listboxes only. For complex comboboxes like textbox with image, clicking the image will open drop-down list will not support normal methods. Here I am listing out different ways to handle select boxes. Thanks to bloggers as I read these from one and more blogs. Exmaples: Consider the following example where there are two drop-downs, one for the states and the other for counties. The county drop-down is populated based on the state selection. You can see in the site above, when the state is selected, a spinner shows up for a few seconds before the county drop-down is populated.  Here we are using waitForCondition as it allows to mention explicitly TIMEOUT whereas selenium provided waitFor allows only default TIMEOUT value. 1. Dependent drop-down Lists using waitForCondition Using waitForCondition and some JavaScript, we wait until display style attribut

Selenium - Drag and Drop Operation

The inbuilt dragAndDrop function provided by selenium RC classes will do the expected operation well easily. Some times its difficult to do drag and drop operations like drop on particular element, etc. Here is the approach. 1. Drag an element to drop on to another element: driver. get ( "myURL" ) ; var from  =  driver. findElement ( By. xpath ( "fromElement" ) ) ; var to  =  driver. findElement ( By. xpath ( "toElement" ) ) ; new Actions ( driver ) . dragAndDrop ( from, to ) . build ( ) . perform ( ) ; 2. Drag an element to an offset: driver. get ( "myURL" ) ; var dragElement  =  browser. findElement ( By. id ( "ElementToDrag" ) ) ; new Actions ( driver ) . dragAndDropBy ( dragElement ,  200 ,  10 ) . build ( ) . perform ( ) ;

Selenium - Handle JavaScript Alert and Confirmation boxes

Confirmation boxes  and Alerts are handled in same way in selenium. var alert  =  driver. switchTo ( ) . alert ( ) ; alert. dismiss ( ) ;    //Click Cancel or Close window operation alert. accept ( ) ;     //Click ok Handle Confirmation boxes via JavaScript, driver. executeScript ( "window.confirm = function(msg){return true;};" ) ;

Selenium - Handle Iframes/Frames easily

Hi all, Here I am going to list out ways to handle iFrames parts in selenium automation as I read from some sites. Example-1: //Gmail Body is an iframe. Here we are writing content to body of new mail in selenium var bodytext = "Sample Body Text for Testing " ;   var iframe_locator = " css = table : contains ( 'Subject:' )   +*   iframe\ "; var iframe_body = selenium.browserbot.findElement(iframe_locator).contentWindow.document.body; if (browserVersion.isChrome) {       iframe_body.textContent=bodytext; }  else if(browserVersion.isIE) {   iframe_body.innerText=bodytext; } Example-2: //Switch to the frame - use index/name driver. switchTo ( ) . frame ( "frameName" ) ;   //Also you can use like  SwitchTo.Frame(relative=up) SwitchTo.Frame(relative=top) // Do your operations in frame   //Switch back to the parent window driver. switchTo ( ) . defaultContent ( ) ;

Selenium Rare Tips - Part II

1. Get Browser Name, Version and Environment Details Java Script Expressions which you can use by Selenium.getEval to get the values. navigator. appCodeName     //For Browser Name navigator. appVersion      //For Browser Version navigator. userAgent       //For both details navigator. appName         //For Browser Name navigator. cookieEnabled   //Cookie enabled or not navigator. platform        //OS 2. Get Current URL selenium.getLocation ( ) 3. Scroll Bar Position Actual Width/Height of element: ( Excluding ScrollBar ) selenium.browserbot.getCurrentWindow ( ) .document.getElementByid ( 'css#id' ) .clientWidth selenium.browserbot.getCurrentWindow ( ) .document.getElementByid ( 'css#id' ) .clientHeight Max Scroll Position: scrollWidth - clientWidth    //Max Horizontal Scroll Position scrollHeight - clientHeight  //Max Vertical Scroll Position Current Scroll Position: scrollLeft scrollTop If you are usin