Skip to main content

Mobomo webinars-now on demand! | learn more.

/test-driven-development

Automated testing has become one of those terms that we hear but what does it mean exactly? Is it actually necessary in order to be successful? And what common objectives can we learn from automated testing? What is automated testing? Test automation is the use of special software (separate from the software being tested) to control the execution of tests and the comparison of actual outcomes with predicted outcomes. Test automation can automate some repetitive but imperative tasks in a formalized testing process already in place, or perform additional testing that would be difficult to do manually. Test automation is critical for continuous delivery and continuous testing. The biggest question that many ask is why is automated testing necessary - see some of our reasonings below.

Automated Testing Saves Time and Money

Software tests have to be often repeated during development cycles to ensure quality. For each release of the software, it may be tested on all supported operating systems and hardware configurations. Manually repeating these tests is costly and time-consuming. Automated tests can be run over and over again at no additional cost, and they are much faster than manual tests.

Vastly Increases Test Coverage

Tests are written as YOU define, if you put in the time and effort to write a lengthy test you wouldn’t normally test manually, you can run this unattended ensuring the product is behaving as expected while keeping your sanity.

Testing Improves Accuracy

Even the most robotic humans make mistakes, automated tests will run as specified every time they are ran.

Automation Does What Manual Testing Cannot

An example of this is the fact that automated testing can scale, simulating thousands of users hitting the web application or test all 200thousand plus pages of our web application

Automated QA Testing Helps Both Dev and QA

Simply put, you catch bugs quicker and are notified in real time.

Morale Improves Across Team

Automating repetitive processes allows team members to focus on more challenging problems which can be more rewarding.  

Some common objections to automated testing:

Writing test will take me more time to write thus making me less productive!

Initially, this may take you away from moving the application forward at the rate your comfortable with but automated testing will help you from having to go back and revisit what you’ve created.

It won’t catch the tricky bugs

It may or may not, writing automated tests frees up your time to find the tricky bugs so you can push fixes.

Writing tests are boring! Boring? I agree, writing tests isn’t always the funnest scenario; if you want you can try writing your test as a pun. I have no idea where to start! We will cover a roadmap that is open ended to facilitate discussion. We are always here to help!   Want to read more about QA and automated testing? Check out how automated testing saves QA jobs

Categories
Author

Keyboard

A couple of days ago I was raving to a QA tester about one of our automated browser testing initiatives at Mobomo and how it could greatly benefit the quality assurance field as a whole as well as free up time for our manual testers. I was surprised to get a response along the lines of, “Yeah…  so we can automate ourselves out of a job.”

Regrettably, there are hundreds if not thousands of jobs that are lost per year due to automation - leaving many people in a frantic to either start looking for a new job or even a career. Based off my time in the software industry I have found the opposite for QA Testers. In my defense, I delivered a handful of informal reasons on "how automated testing protects QA testers" to reassure us all that we won’t be out of a job (or career) anytime soon.

If your company is taking an initiative to implement automated testing, they will most likely seek to upgrade your skills:

Manual testers generally have the best overall view of functionality for an application. They know the areas that are most prone to breaking, understand the general flow of the application, and they work with all team members in order to ensure the application is in a production-ready state. A reliable company will see the value these individuals bring to the table and will find it worth seeking the people with the most hands-on experience to begin their automated testing initiative.

Develop more skills, putting you into higher demand:

My ability to think like a programmer has been the most lucrative skill I have obtained so far. The capability has instilled logic that has allowed me to have a more clear understanding of the world around me. I am able to make better decisions in life and take action sooner by simply understanding the philosophy behind programming and overcoming the fear of learning it. Besides, burning glass reports that 49% of all jobs paying $58,000 or more requires some form of coding skills… if that isn’t demand, then I don’t know what is.

Efficient testing leads to more productivity:

In the realm of automated testing everything is written in code, meaning that a computer will interpret a set of instructions in a static state that will be executed at the speed of light. Now the human brain is roughly 30 times faster than the best supercomputer, but the combination of neural activity with deciphering instructions and using motor skills to fulfill these instructions severely hinders your ability to be productive. Now that tests are being written in code, you can execute tests without being present, freeing up your time to assist coworkers or close out other issues.

Tests-as-Code:

This allows you to dot your i’s and cross your t’s - making you more valuable to coworkers.

Since code is static by nature, the tests you have created over time won’t change unless you manipulate your code. This innate ability allows you to scale a suite of tests covering the whole application without having to worry about writing them again unless your application changes to the point where some tests may not be the best fit. If this situation happens you may try and upgrade your suite of tests ensuring that your application stays stable on every code change.

Hopefully I have reassured some of you on automation in the QA world. I recommend learning how to use selenium -  a free open-source tool for automated browser testing. Another great source is YouTube, where you can essentially find anything and everything on automated testing if you search correctly.

Remember, automated testing is one of the greatest opportunities for a QA tester - it’ll save you time, increase your skill set, increase your test accuracy, and ultimately keep you moving forward in your career.

 

Categories
Author
1
Subscribe to Automated Testing