- •Automated Software Testing Contents
- •Introduction to automated software testing [3]
- •Figure 1 Automated Test Lifecycle Methodology (atlm)
- •Reasons to automate software testing [1]
- •Types of Automated Tests
- •Code Auditing [4]
- •Coverage Monitor [5]
- •Functional Tests
- •Load Tests [6]
- •Test Management
- •Advantages of automated software testing
- •Disadvantages of automated software testing [4]
- •Choosing Automation Tools
Load Tests [6]
Load testing is when an application is tested under heavy loads and its response is measured. There are some tests that are impossible to perform manually. For instance, if a website is being tested manually, it is not feasible to get 100 people using different parts of the website at the same time. So using load tests, virtual people can be created and allocated to use parts of the website concurrently. Load testing simulates expected usage of a software program and records on how the system reacts. Many things can be simulated. For example change of hardware, change of scenario, change of hardware with different scenarios, virtual people, virtual events and much more.
Test Management
This involves participants carrying out the tests and correcting the detected errors. The test monitors performance of every item on the long lists of test case files. This workload makes timetable follow up important to management.
Advantages of automated software testing
It is important to choose the right tools for every aspect in an organisation. If this is done properly, there are lots of advantages.
Automated test performs the same operation every time it is run and thereby eliminating human error. Also each test can be repeated on difference versions of an application, thus saving money and time. This results in the more tests run in less time using fewer resources, giving a good test coverage.
This means that automation is faster and would overall work out to be cheaper than manual testing.
Disadvantages of automated software testing [4]
Although automated testing has many advantages it also has its own disadvantages.
One big disadvantage of automated testing is that initially a high investment is needed to buy the tools and train the staff to use the tools. Also in the test preparation stages a high man power is needed. Another thing is that a lot of areas in testing are left uncovered. There are not enough tools out there yet to cover all the tests so some testing has to be done manually.
Also a lot of skill is needed to write the automation test scripts, so it is expensive to develop the tools to make them custom made.
Choosing Automation Tools
To choose the best tool for the task, there are a lot of things that need to be considered. First thing is the ease of integration. The tool should easily integrate with the system and should be weighed against the cost and performance. Also, the tool has to be compatible with the design and implementation of the application. It should be able to identify all objects and different classes in the application. The second thing that needs to be looked at is performance. How it performs in the environment with the network traffic and the hardware is very important.
A type of tool is directly dependant on the type of tests. So the tests need to be taken into consideration. Another important thing is maintainability. The support, online communities etc need to be looked at. If there is enough support than problems will be resolved quicker.
Finally, the tools have to be affordable.
Summary
To summarise this report, the pros outweigh the cons and even though manual testing can not be entirely replaced, the features of automated testing surely helps to speed up the process of testing.
References
Reasons to automate: http://www.my-project-management-expert.com/software-application-testing.html
http://www.exforsys.com/tutorials/testing/automated-testing-advantages-disadvantages-and-guidelines.html
Stages of lifecycle: http://www.informit.com/articles/article.aspx?p=21468&seqNum=5
Software quality assurance by Daniel Galin (Pages 235 – 245)
Coverage monitor: http://www.bullseye.com/coverage.html
Load testing: http://en.wikipedia.org/wiki/Load_testing
