Skip to main content

Testers and Automated Testing

We all know the value a tester brings to projects and the industry is now finally valuing testers as equals to developers. However, one thing that is often a debate is the input or role a tester has on automated testing. Testers can have a major influence in automated testing without having to write all tests on their own.

In my company, testers are expected to be technical and be able to write automated tests on their own. In fact the expectation is to create the Automation Framework too. I am not a fan of testers creating automation frameworks or writing automated tests on their own. I would prefer for testers to pair with developers on any automated testing activity, be it the framework or writing automated tests.

Testers understand the application backwards and they are the best candidates to identify what should be tested. Now, by collaborating with the developers, both can make an informed decision as to what can be tested and at what level. For e.g. Some tests are worth writing at the UI level as the tests which are written on the underlying layers do not cover that. This also gives both tester and developer confidence on the test coverage.

As a result of this, the tester need not waste time testing all those weird cases manually as they have automated tests to validate them and the tester can focus on other edge/weird/negative/boundary cases which could detect some defects.

Also, another benefit of this is that the testers would be able to learn better coding techniques by pairing with developers and have a better understanding of the codebase. This would help them to read the code better and possibly find defects by reading code as well.

Comments

Popular posts from this blog

Test your services and not your UI

As a tester, i have spent more than 6 years trying to automate tests at the UI layer. As years passed, better automation frameworks evolved resulting in writing more manageable and maintainable code, but the only thing that wasn't getting better was the cost of maintaining these tests, especially when the no. of tests were 500+. There are multiple reasons why i feel creating an automated regression suite of tests at the UI layer is not good. Some of them are Limitations on what the tool can do Time taken to execute these tests leading to longer feedback loop Success rate of tests is not 100% due to latency issues Change in UI and UI flow resulting in an increase in cost to maintain UI tests On the other hand, testing business logic without having to deal with the dumb UI was a concept that a friend of mine at ThoughtWorks, Chirag Doshi introduced to me. He sent me couple of blog links written by Alex Verkhovsky about why is it so hard to do functional test automation at th...

BDD is over-rated

Over the past few years, I have tried to justify the use of a BDD (Behavioral Driven Development)  framework to express my tests, but not once have been able to say BDD has helped me address a  problem which writing tests the non BDD way would not have addressed. I do understand the value BDD brings to the table, but in most projects that I have implemented BDD on, we have tried to provide a solution (BDD) to a problem that does not exist. Let me try and explain. Lets look at the key benefits of expressing tests the BDD way (There could be more) Collaboration between Business and Development Ubiquitous Domain Language Focus on the behavior of the application Now, more often than not unless your business is co-located with the team, collaboration is not the easiest. The value BDD brings here, is the business validating our understanding by reading our tests expressed in the Given When Then format (BDD) and providing feedback, as BDD expresses the behavior of the syst...