Subscribe by Email

Thursday, February 16, 2012

What are different automated testing challenges?

Automated testing though being a modern testing methodology, faces challenges. Test automation is used whenever a large number of test cases are to be executed. A huge number of test cases cannot be executed manually.

- In automated testing, an automation tool or software is employed to handle the execution of the test cases.
- Such software even compares the actual outcome to the expected outcome.
- It efficiently generates the test data and also the preconditions.

- Test automation process is mainly used to automate a manual testing process which is typically a much formalized one.
- Although manual testing is way more effective than the automated testing, it consumes too much of time and requires a larger effort.
- Though, manual testing is able to discover more errors and bugs, there are certain kinds of bugs that cannot be discovered up by manual testing.
- For automated testing a computer program is written that will take up the whole testing process which otherwise would have required manual work.
- Manual testing sounds like quite a drudgery! Isn’t it?
- Once the automated software is ready, the test cases can be executed quickly and can also be repeated any number of times without much fuss.
- Automated testing proves to be time, efforts and cost effective method for the software projects that are way too lengthy and need more maintenance.

Test automation tools are expensive and therefore they are employed in certain definite combinations with the manual testing. There are few challenges faced in automated testing:

One of the challenges that automated testing faces is that it becomes cost effective only when used in the long term i.e., for regression testing of a software system or application.

2. Requirements
- The requirements for a software system or application are identified from the user stories.
- User stories are basically a description like of the software product.
- These requirements are sorted according to the priority as follows:

(a) High priority Requirements
These are the most critical requirements of a software system or application and have to be included in to the software before it is released to the public.
(b) Medium priority Requirements
These requirements are not so critical to the software system or application and hence can be worked around later. But, it should be done before the implementation.
(c) Low priority Requirements
These requirements are added just to enhance the overall quality of the software system or application. But, the software can do without these requirements.

After sorting up on the requirements in the order of their priority, the iterations for the release are planned and each iteration release takes about 1-2 months. Meanwhile too much of change occurs in the requirements of the software. Many a times such changes cause the iterations to bump. This is indeed a great challenge that hinders the implementation of the automating processes.

3. Tools
- The traditional tools don’t seem to work for all kinds of automated testing processes.
- For example, the traditional tools cannot be used for the agile automation process since they are capable of solving only the traditional problems.
- This makes it difficult to implement the automation in the early stages of the testing cycle.
- The deployment of the automated testing processes become simpler only after the whole software comes to the verge of completion since by then many issues had been settled.
- So, making a wise selection of tools is crucial for the automation and also poses a big challenge.

4. Effective resource management as the program grows poses another problem.
5. Lack of effective communication among the team members.

No comments:

Facebook activity