Simply put, what is meant by "Automated Testing" is automating the manual
testing process currently in use. This requires that a formalized "manual testing
process" currently exists in your company or organization. Minimally, such a process
includes:
- Detailed test cases, including predictable "expected results", which have been
developed from Business Functional Specifications and Design documentation
- A standalone Test Environment, including a Test Database that is restorable to a known
constant, such that the test cases are able to be repeated each time there are
modifications made to the application
If your current testing process does not include the above points, you are never going
to be able to make any effective use of an automated test tool.
So if your "testing methodology" just involves turning the software release
over to a "testing group" comprised of "users" or "subject matter
experts" who bang on their keyboards in some ad hoc fashion or another, then you
should not concern yourself with testing automation. There is no real point in trying to
automate something that does not exist. You must first establish an
effective testing process.
The real use and purpose of automated test tools is to automate regression testing.
This means that you must have or must develop a database of detailed test cases
that are repeatable, and this suite of tests is run every time there is a change to
the application to ensure that the change does not produce unintended consequences.
An "automated test script" is a program. Automated script development,
to be effective, must be subject to the same rules and standards that are applied to
software development. Making effective use of any automated test tool requires at least
one trained, technical person – in other words, a programmer.
|