Wednesday, May 25, 2016

Interview with Sahi Pro - The Tester's Web Automation Tool

I am Ajay Balamurugadas and I welcome you to our weekly show where we interview one of the promising leaders of the industry. It gives me immense pleasure to introduce today's guest. He has been a consistent performer in web automation and built a strong hold in a very competitive market. When everyone built the automation frameworks, he focused on what is important - automating the checks. His unique philosophy of helping the tester makes his tagline - "The Tester's Web Automation Tool" the Sahi (correct) tagline for him.
Without further ado, let us welcome -
Sahi Pro: The Tester's Web Automation Tool 
Ajay(A): Hello, Sahi Pro. Welcome to the show. We are very excited that you are here today to interact with us and share your expertise. You are one of the few automation tools who is tester-friendly and gets the job done in a simple manner. Tell us about yourself and your journey.
Sahi Pro(SP): Thank you, Ajay. It is my pleasure. I started as an open source product and then due to customer commitments, I started to focus on my Pro version and fulfill customer expectations. I noticed excellent testers struggling to automate due to complex automation tools. So, I evolved to enable subject matter experts and testers to get into automation easily.
A: Yes, that is indeed strange. When everyone around you focuses on building a robust framework and turning testers to coders, you have taken a different route altogether...
S: I will not say that we have a taken a different route for the sake of being different. My thought process is continuously evolving based on the testing industry and trends. I quickly realized that most of the end users were expected to be technical programmers or automation engineers. They were expected to build a framework from scratch, get the developers write code to align with the element identification mechanism and after all this, focus on automating the checks.
I found it quite disturbing. The purpose of web automation is to automate the checks, give the testing team the confidence that the regression bugs they expected to find are not present. The tool should free up the tester's time. Testers should explore the application and find more critical bugs. I don't expect my users to be technically super-strong. I take care of everything to help the tester, right from identifying the elements, suggesting accessor alternatives, providing relational APIs, excellent logging and reporting, calling Java functions and libraries from my script, automatic screenshots on failure and believe it or not, I automatically wait for page loads and AJAX activities to end!!!
A: Whoa! That's quite a big list of key differentiators! Tell us about your element identification mechanism.
S: I use my own wrappers around the Javascript DOM to identify elements. My APIs use various DOM attributes of an element to identify them. Instead of relying on a single attribute, I look for the element's value, name, id, css class or index etc. So, I work well even if multiple elements have the same attribute value. If I am unsure about a particular element's identification, I rely on my trusted advisor - the Relational APIs to identify one element with respect to another.
A: Many testers want to learn automation and give up as soon as they face problems in learning a particular language. What is you suggestion to them?
S: Yes, that is a common story. People are spending time learning the language more than automating the tests. I am not against anyone learning a language but let us remember why we started this discussion. A tool should enable people to automate and not set restrictions on the way. I am an extension of JavaScript and have a pretty good recorder which can create scripts for further usage. If you have never used any tool for automation, try me!!! If you already burnt your hands spending a lot of time learning a language with little success, let us pair together and see if I can help achieve your goals.
A: Are you only for newbies or can experienced folks take advantage of your prowess?
S: As I have already highlighted, my recorded scripts can be used as a good starting point for further scripting. My JavaScript is executed in a Rhino JavaScript Interpreter, running inside my proxy. As Rhino is a JavaScript runtime running inside a Java Virtual Machine (JVM), this adds a lot of power to my scripts. My scripts can directly call Java code in scripts.
A: I am sure, our readers are excited to try you and your APIs. Does anyone provide training or demo about you?
S: The folks at Tyto Software Pvt. Ltd seem to be quite helpful in this regard. Shoot an email to info[at]sahipro[dot]com or check out the documentation about me at http://sahipro.com/docs/introduction/index.html 
I also meet my friends every Thursday in a webinar at www.sahipro.com/webinar
A: Thank you for your time, Sahi Pro. We wish you all the best for your future releases and features.
S: My pleasure. All the best for your series too. 
Feel free to add your questions as comments and we will get Sahi Pro to answer for you. 

Leia Mais…

Sunday, January 24, 2016

Life moves on. Thank you, Fiberlink (IBM)

I wasn't challenged at my job as I had spent just over 5 years at my first job at EFI. Most of them who had joined with me had quit. I had groomed my skills at EFI - thanks to the 9-6 office timing. I would reach home by 7pm and practice. I used to practice at 99tests, participate in Twitter conversations, read books and blogs. One fine day, I got a call from 99tests Founder - Praveen Singh that MaaS360 wanted to give a project to 99tests for 6 months. Before that, they wanted to have a pilot for a month with 1 tester. I was the chosen one. I tested the product. I also got my first Android smartphone for that (which I still have in perfect working condition).

After 2-3 weeks of testing, the QA director at MaaS360 called me for a chat. I kept on refusing. But after persistent calls and emails (6 to 7 times), I finally went to the office for a chat. They liked the reports and I liked the complexity of the product. I was offered on the spot and in the name of chat, I was interviewed :) I resigned from EFI the next day and after serving the notice period, I joined MaaS360 (Fiberlink) on Jan 30, 2012.

My first blogpost after joining the company is here: http://enjoytesting.blogspot.in/2012/02/new-job-best-is-yet-to-come.html

There are many things I got to learn - both professionally and personally. I would like to highlight some of them below:

After close to four years of working at Fiberlink and IBM (IBM acquired Fiberlink), I wanted to try my hand at freelancing. I wanted to get out of corporate culture, the performance appraisals, the fixed timings and working on the same projects. I did not have any problem continuing what I did for my last four years but the urge to engage more with the testing community is strong. 

I want to spend more time focusing on individual testers, sharing what I know, helping small teams achieve greatness. It is time to move on. Thanks Fiberlink, IBM for the learning and the happy memories. Till the next blog post, be fearless and follow your heart :)

Leia Mais…