Print Page | Close Window

Why Should You Use Automated Testing?

Printed From: One Stop Testing
Category: Types Of Software Testing @ OneStopTesting
Forum Name: Automated Testing @ OneStopTesting
Forum Discription: Discuss All that is need to be known about Automated Software Testing and its Tools.
URL: http://forum.onestoptesting.com/forum_posts.asp?TID=4784
Printed Date: 18Jul2025 at 11:22am


Topic: Why Should You Use Automated Testing?
Posted By: tanushree
Subject: Why Should You Use Automated Testing?
Date Posted: 25Feb2008 at 4:11am

Why Should You Use Automated Testing?

Every software development group tests its products, yet delivered software always has defects. Test engineers strive to catch them before the product is released but they always creep in and they often reappear, even with the best manual testing processes. Test automation is the best way to increase the effectiveness, efficiency and coverage of software testing.

Manual software testing is performed by a human sitting in front of a computer carefully going through application screens, trying various usage and input combinations, comparing the results to expected behavior and recording their observations. Tests are repeated often during development cycles for source code changes and other situations like multiple operating environments and hardware configurations. Automated testing software is able to playback pre-recorded and predefined actions, compare the results to expected behavior and report the success or failure of these tests to a test engineer. Once automated tests are created they can be easily repeated and they can be extended to perform tasks impossible with manual testing. Because of this, savvy managers have found that automated testing is an essential component of successful development projects.

Automated testing has long been considered critical for big software development organizations but is often thought to be too expensive or difficult for smaller companies to implement.

What makes automated testing so important to these successful companies?

Automated Testing Saves Time and Money

Tests have to be repeated often during development cycles to ensure quality. Every time source code is modified tests should be repeated. 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. Once created, automated tests can be run over and over again at no additional cost and they are much faster than manual tests. Automated testing can reduce the time to run repetitive tests from days to hours. A time savings which translates directly to cost savings.

Automated Testing Improves Test Accuracy

Even the most conscientious tester will make mistakes during monotonous manual testing. Automated tests perform the same steps precisely every time they are executed and never forget to record detailed results.

Automated Testing Increases Test Coverage

Automated testing can increase the depth and scope of tests to help improve software quality. Lengthy tests that are often avoided during manual testing can be run unattended. They can even be run on multiple computers with different configurations. Automated testing can look inside an application at memory contents, data tables, file contents, and internal program states to determine if the product is behaving as expected. Automated tests can easily execute thousands of different complex test cases during every test run providing coverage impossible with manual tests. Testers freed from repetitive manual tests have more time to create new tests and deal with complex features.

Automated Testing Perform Tests not Possible with Manual Testing

Even the largest software departments cannot perform a controlled web application test with thousands of users. Test automation can simulate tens, hundreds or thousands of virtual users interacting with network or web applications.

Automated Testing Helps Developers and Testers

Shared automated tests can be used by developers to catch problems quickly before sending to QA. Tests can run automatically whenever source code changes are checked in and notify the team or the developer if they fail. Features like these save developers time and increase their confidence.

Automated Testing can Improves Team Morale

This is hard to measure but we’ve experienced it first hand, automated testing can improve team morale. Automating repetitive tasks gives your team time to spend on more challenging and rewarding projects. Team members improve their skill sets and confidence and, in turn, pass those gains on to their organization.




Replies:
Posted By: meera_1974
Date Posted: 05Mar2008 at 10:20am
Hi,
    After reading the above article, i have this doubt as to how (ex winrunner  record/play back tool  )knows the expected result such that after the test is run, it say if the test is Pass or fail?
 
In manual testing, we have the expected result with us and so we compare, here where is the expected result  stored?
 
thanx for the reply
meera
 


Posted By: lawrence
Date Posted: 05Mar2008 at 1:40pm
Hi Meera,

I have no idea of winrunner. But I am using another functionality testing tool, in which I record a required scenario. Then by modifying the code, we can check the functionality. The tool does not know the expected result. But we have to write in the code to check the functionality.


Posted By: softomania
Date Posted: 19May2008 at 8:09am

Hi,

If you are new in Test automation then I would suggest to go for Mercury test tools say QTP, Loadrunner and Quality Center. They all come out with some good tutorials which will give you a good jump start.

 

Thanks

Raj

Also visit my site for

http://softwareqatestings.com/ - software testing , http://softwareqatestings.com/ - software testing tutorial , http://softwareqatestings.com/ - software testing interview questions

 


Softwareqatestings.com TelecomFYI.com

for all


Posted By: Georgiodz
Date Posted: 30Jan2009 at 9:23am
I recently stumbled upon an article arguing whether it is useful to automate web testing (article: http://en.web2test.de/web-testing-knowledgebase/test-automation-web/ - web test automation ). I think some of the arguments are also valid for automated testing in general. The article points out under what circumstances automation of web testing is worth it.


Posted By: roblambert_pact
Date Posted: 15Apr2009 at 5:48am
Interesting views and opinions on automation. Are these based on experience?

"Automated testing software is able to playback pre-recorded and predefined actions"

This is more commonly referred to as computer aided testing. Record and playback is the most expensive, inflexible and high maintenance types of tests possible. True automation testing sits below the UI and is capable of working even when a UI element has changed. Automation testing is about testing the features and functions of the app, not the UI and how the user interacts with it. This is computer aided testing.

"Automated Testing Saves Time and Money"

Really?? I've never seen this. In fact, automation almost always costs more. The tools are generally very expensive (unless you go for open source tools). The people to code them are generally paid more. In your record and playback example, you would need a manual tester to define the test, run the test, raise the defects, retest the test, close the defects and then mark the test as successful. then the automation team will automate the test.

What happens when the requirements change? The manual tester needs to rewrite the test, retest, etc etc.

this costs money, not to mention the cost of troubleshooting any failures.

"Automated Testing Improves Test Accuracy"

No test is ever reproducible identically. The environment, the mood of the tester, the operating system state etc etc is never ever going to be identical. If you are performing regression test, why are you doing it? To prove something that was working is still working? Is that more valuable than finding new and interesting bugs?

Cem Kaner uses a minefield analogy. Once you have cleared a path through it, why keep hitting the same path again? There will be no more mines. Isn't it more valuable to hit another path? Clear some more mines?

If you are repeating lots and lots of tests then you will end up with loads of record and playback tests that will need changing when the app changes. Expensive.

"Automated Testing Increases Test Coverage"

If the manual test has been avoided then I would suggest that automating it is a recipe for disaster. What is there is a killer bug in the app? Automation takes longer than manual testing so wouldn't it increase coverage if manual testing was used instead?

"Automated Testing Helps Developers and Testers"

Some test can, some tests cannot. I think you hit the nail on the head with the "increase their confidence." - perfect reason to automate.

"Automated Testing Perform Tests not Possible with Manual Testing"

Absolutely and a good reason to use automation.

"Automated Testing can Improves Team Morale"

Not sure about this one. Quite a vague social statement. I've never seen this happen in my experience. Any research on this?

In response to new tools I would avoid the big vendors. There are thousands of open source or cheap tools out there. If you genuinely are new, then opt for Selenium. Python or Perl are good languages to learn.

Rob..


-------------
http://blogs.imeta.co.uk/RLambert/Default.aspx

http://pac-testing.blogspot.com/

roblambert_pact (twitter)


Posted By: tossy
Date Posted: 17Apr2009 at 12:52am
Recently I came across article on ...most of the testers has shared there opinions on why should you use automated testing.
http://searchsoftwarequality.techtarget.com/generic/0,295582,sid92_gci1345733,00.html


-------------



Posted By: cprasenjit26
Date Posted: 15May2009 at 12:48pm
Your article is very helpful and informative. Thanks
 
http://softwareqatestings.com - Software testing tutorial


Posted By: Georgiodz
Date Posted: 20May2009 at 3:59am

@ Roblambert I do not agree with certain of your remarks as well (note this is only my personal opinion).

 

 

"This is more commonly referred to as computer aided testing. Record and playback is the most expensive, inflexible and high maintenance types of tests possible. True automation testing sits below the UI and is capable of working even when a UI element has changed. Automation testing is about testing the features and functions of the app, not the UI and how the user interacts with it. This is computer aided testing."

 

There are capture and replay tools like web2test which are tolerant (to a certain extend) towards GUI changes. web2test for example uses different algorithms for a recognition of GUI elements.

 

""Automated Testing Saves Time and Money http://forum.onestoptesting.com/forum_posts.asp?TID=4784&PN=1 - - - - - - - - - http://kona.kontera.com/javascript/lib/imgs/grey_loader.gif - "

Really?? I've never seen this. In fact, automation almost always costs more. The tools are generally very expensive (unless you go for open source
 tools). The people to code them are generally paid more. In your record and playback example, you would need a manual tester to define the test, run the test, raise the defects, retest the test, close the defects and then mark the test as successful. then the automation team will automate the test."

 

Then why would you automate in the first place. It is right that not every project/application is worth automating it. It is also right that you will have to put in an initial effort in the beginning (acquiring a tool, formation, creation of test cases). But e.g. for regression testing it is still worth it and over time you will get your money’s worth.

 

"No test is ever reproducible identically. The environment, the mood of the tester, the operating system state etc etc is never ever going to be identical. If you are performing regression test, why are you doing it? To prove something that was working is still working?"

 

Yes. Imagine you change part of the software (e.g. new features). How can you be sure that you did not generate new bugs? Also your example (No test is ever reproducible identically) actually shows a weakness of manual testing. You will only cover certain scenarios/initial states of the SUT with the described approach. Some automation tools offer the possibility to set different initial states (taking again the web2test example, the tool offers the possibility to set e.g. proxy, cookies, locale) which again gives you the chance to test all/more possible constellations with little effort (reuse the same script for another constellation).

 

""Automated Testing can Improves Team Morale"

Not sure about this one. Quite a vague social statement. I've never seen this happen in my experience. Any research on this?"

 

Maybe if you put it in a different way: Manual testing decreases team morale in certain cases. As an example I would like to quote the article

 
http://en.web2test.de/web-testing-knowledgebase/automated-functional-tests-of-web-applications/ - automated functional tests of web applications

 

"There are for instance tasks where the same or similar data has to be entered manually in hundreds of input masks – a situation which requires full concentration but does not pose an intellectual challenge and thus quickly leads to a decrease of motivation and attention." In that case a tool which allows data driven testing will be the better choice.




Print Page | Close Window