Posts by rnamta

    Executing Selenium/WebDriver tests remotely using Maven and Jenkins

    Recently our team created a nifty selenium test suite for testing a salesforce.com app we developed. We used TestNG framework for writing tests along with the latest and greatest selenium available out there which is WebDriver. In case you want to know why we chose web driver over RC,read this. Since we planned to execute the tests on a remote windows machine triggered from our Jenkins machine (linux), we leveraged the capabilities of RemoteWebdriver. Eventually we wanted to be able to run the tests with our Continuous Integration environment which meant that the tests are build on Jenkins (linux) with maven and executed on dedicated windows machine remotely.
    Read more »

    Notes from Software Testing Conference (STC 2010)

    Recently I attended STC 2010, the 10th edition of the international Software testing conference organized by QAI in Bangalore on 22-23 Nov. This year the theme of the conference was Testing 3.0- From transaction to transformation. I was pretty excited to see the conference program as the speakers included a good mix of industry leaders, practitioners and testing experts slated to present on a wide array of interesting topics. This is a short experience report of the 2 day conference based on the sessions I managed to attend as well as relate to and my interaction with some of the speakers/participants.

    Day 1

    Although still weary from late arrival at Bangalore, me and my colleague managed to reach the venue in time. As soon as we got ourselves registered we quickly glanced through the schedule and marked sessions of interest.The program on day 1 initially was all keynotes followed by 3 parallel tracks. The parallel tracks were split up based on categories such as Business leadership, Test program management and Techniques and Tools. Majority of the sessions I chose to attend were in the 'Tools and Techniques' category.
    Read more »

    Installer Testing

    Ever seen a Formula 1 car lined up in the front row on race day failing to take off the grid and the hard work put in by the whole team coming to a naught due to some minor glitch in the start-up system. That's probably the same feeling when a software meant to make possible the impossible fails to install at the first place.

    Testing of the installer assumes significant importance since this is the first experience of your customer with your product. In my opinion installer testing is not only all about Installation testing but it also falls into the realm of Usability or User experience testing. A good installer must be like a good browser which quickly gets out of your way and lets you start with the real thing.

    Recently I have been involved in testing the installer for one of the products we are creating for our customers. This blog is specific to experiences with installer testing. Additionally this blog is not meant to be a set of instructions or checklist for testing a installer. Here I have tried to explain a generic set of guidelines which should help you to come up with a test strategy which is most suitable for testing your installer.

    Read more »

    An introduction to soapUI for testing web services

    soapUI is a free, open-source desktop application specifically designed to inspect, develope, invoke and test WSDL or REST based web services.In this blog I have tried to introduce the tool and list some of its most useful features.In my successive blogs I will dig deeper and try to explain how it can be used to test functionality and performance of web services by anyone who is just starting with web services testing.

    I have been using soapUI for a while now and it not only provides the capability to test services for its functionality but is also quite capable of load testing them under different scenarios.Add to it the limited but powerful capability to do compliance testing and we almost have a one stop solution for our testing needs as far as web services are concerned.

    Its intuitive and interactive GUI stacked with useful features makes web service functional and performance testing a breeze.Since its free and open-source its power mainly lies in scripting using groovy and the user must have some experience with it as trivial tasks like loading values from files and passing property values in between test steps would require the user to write scripts.The soapUI project is hosted on sourceforge.

    soapUI Pro

    A commercial version of soapUI, soapUI Pro, which adds expert professional support and a number of nifty features to the soapUI interface is available and its been gaining popularity within the development community (programmers and testers alike).This is mainly due to its ease of usage,low cost of licensing (resulting in high ROI) and a excellent support team.SoapUI pro adds to the core functionality of soapUI some very user friendly and powerful features which makes it possible for a user having very less and even negligible scripting experience to use the tool extensively for testing services.

    Some powerful features of soapUI/soapUI Pro

    Some of the features of the tool which are worth mentioning are listed below :

    • Data driven testing of services to verify and assert request-response messages against a large set of data.
    • Load testing to measure performance alongwith ensuring that the functionality is not breaking by applying different load test strategies.
    • Schema and SOAP compliance assertions which can be included as default assertions in test cases to verify that incoming and outgoing messages are schema compliant and the response is not a soap fault.
    • Xpath,Xquery and groovy assertions to handle response validations.
    • WSDL,XSD and XML inspectors to verify wsdl,scehma and message content.
    • Support for groovy scripting: This enables creation of generic libraries for common functions that can be reused.
    • Covergae analyzer at project,test Suite and test case level to determine contract covergae.
    • Fairly interactive and intuitive UI which can act as a service client and hence we are not required to build any additional client interface.
    • A nifty editor for xml which provides different views(form and tree views in addition to xml view) for editing the xml requests and viewing responses
    • Customizable reporting using JUinit Style HTML reports or data exports.
    • A maven plug-in which can help integrate the tests with the build process.
    • Command line runner for running functional and load tests which dispenses the need for the UI for executing the tests.
    • Web service mocking and simulation.
    • Some recently added features like REST and AMF support,JMS and JDBC test steps.
    • Plugin for different IDEs like eclipse,Net Beans and IntelliJ.

    Summary

    Overall, I found the tool quiet powerful and capable of doing pretty much everything I wanted to do with it.Although there are a couple of things which need improvements such as the reporting in free version is pretty basic,security testing capability is still in its nascent stage and load testing cannot be done for concurrent users beyond certain limit (dependent on OS of the client machine) as it still does not support distributed load testing.

    Despite this,I would encourage anyone involved in web service developement and testing to give their services a spin using the tool as it is worth the effort.I would say that its an excellent tool to get started with web service testing and can help developers and testers equally in developing and delivering robust and high quality web services timely and in an cost effective manner.