Showing posts from 2013

Life surrounded with Touchscreens

I always love the concept videos a lot. They let you express your imagination and also give you a new dimension of thinking. While reading one of the blog I came across a cool video which was surprisingly by Samsung. This video shows day to day life touched by the presence of smart touchscreen and I started thinking that dude this is amazing !!! Take a look at the video and post here, I am sure you would love it:

Learn Test Automation Framework Creation Using Selenium

Folks we have written a tutorial for aspiring test automation engineers who wants to learn Webdriver and looking for Test Automation Framework creation knowledge. The project contains a bunch of chapters right from " writing your first Selenium test " to " how to implement Page Object Pattern ".  We have hosted the sample framework in Github and is for illustration purpose.  Link: It will demo the implementation of Java with WebDriver (aka Selenium 2) and how to write automated tests. The chapters are created in a evolving manner where the first chapter tests are very simple enough (how a beginner would write) and then slowly they have been evolved (how a professional would write). Who's the Target Audience: To work, interact and make the best out of the project a person is required to have a basic knowledge of Java, Selenium API, TestNG and GIT. Just to clear this tutorial is not meant to teach you Jav

Impact Of Responsive Web Design On GUI Based functional Tests

I have been working on a new project which is about building a public facing retail website. One of the requirements of the website is to make it responsive so as to cater to the growing number of requests from mobile devices. As an enterprise if you don't have a dedicated Android or iPhone app, probably making a responsive website is the cheapest way to get your customers happy and served. So not deviating from the actual point, we have a responsive web application in making. And as part of testing we have added a bunch of functional selenium tests. These tests are added to the CI pipeline and runs with every check in. The QA team has a remote machine which is Win7 and is being used to test the application as well as author the functional tests. What we noticed that the functional tests used to pass locally on that Win7 box, however same test when checked-in was failing on CI agent. The log used to show " element is not currently visible and so may not be interacted w

vodQA Bangalore - Awesome joyful event for fellow testers !

Today we just finished the vodQA conference in Thoughtworks  Bangalore ! So many like minded and equally enthusiasts folks with interest in Quality Analysis. It was really  awesome to meet and exchange ideas with them. The best thing was they really enjoyed all the sessions and were excited to go back and implement bunch of these learning ! I also happened to present a talk on Apdex Index and how it scores over Average response time. And it was well received by the crowd. Will soon post the article I presented in vodQA.

iOS native app testing using Frank

From quite some time I have been exploring mobile application testing. Primarily I have been looking into Calabash and Frank . Let's talk about Frank a bit more in this post. Frank is developed by a fellow thoughtworker  Pete Hodgson . It's a light weight UI based automation tool. It's very easy to set up and is apt for testing native iOS app.  It's based on cucumber and UISpec and can be used to write acceptance test for iOS app. Let me brief some steps needed to set it up, it's suggested that you traverse to the iOS application root's directory and then run these commands : You need to install the frank-cucumber gem. Run the command " gem install frank-cucumber " Next command is " frank setup ". This command will create the Frank sub-directory which will contain files needed to generate the Frankified version of the application. Next command is " frank build " which will create the Frankified version of the applica

What Test Automation won't do for you ?

Test Automation is a main stream activity and it's goal is to strengthen the rapid pace of development and augment the continuous release process. In order to keep up the with the pace of development, there has to be a sustained effort to maintain and update the test automation suite.  So test automation has to be a planned activity and included/incorporated in the project planning.  I think I have enough write ups on test automation where in ether I am detailing a new tool or some tool comparison or some tricks and tips or explaining how to set up stuff or best practices etc. This post is to highlight what test automation won't do for you. This is mostly out of my experience and conversation with different people from various roles. Definitely when you read you will have more to add or subtract (which is fine and individual's opinion). Test automation won't substitute for manual testing.  It's an on going activity. It's not a one time investmen

sh: make: command not found

I was trying to set up my personal mac for playing around with calabash . So I started following the instructions mentioned here . When I ran the command "gem install calabash-android" I got the below error. Then after googling on web I realised that this is happening because I upgraded my Xcode post the Mountain Lion update. So now I am running Xcode version 4.6. Once you install Xcode, you will have to install " Command Line Tools ". This will be available under XCode -> Preferences -> Downloads . Once the command line tool is installed try running the following command in terminal: which make and you will see the result as " /usr/bin/make ". Then I tried running the gem install calabash command again and it worked.

Managing a Production release every 2 weeks

Production release ??? Every 2 weeks ??  I am sure the title of the post would have compelled you to think twice but thats what we have been doing here in Thoughtworks in one of the project. And I am happy to share that I am not the only one who is enjoying this 2 week release cycle, there are bunch of other projects which has the same delivery cycle. Since this is repeatable and has been achieved by other team as well, so we must be sharing some commonality in terms of process and techniques which helped us achieve this.  What are those processes ? How big is the QA team ? Do you have a separate release management team ? How much is the automation coverage ? Do you automate all the regression tests ? I am sure you would be having these questions in mind as you are going through the post. Let me explain what empowers us to make a production release every 2 weeks. We here in ThoughtWorks follow agile methodology. I am sure if you are reading this post you would hav