|
|
Functional Testing tests the features and operational behavior of a product
to ensure they correspond to the functional requirements.
Functional Testing is performed on the Graphical User Interface (GUI) level.
It does not require any knowledge of product internals, such as the program code.
Functional Testing is therefore also known as a "Black Box" testing activity.
|
|  |
Functional Testing can be performed manually, or automated using Functional Testing software.
Automated Functional Testing has many advantages, particularly in Regression Testing.
Regression Testing tests the software functionality after changes in the program code to
ensure that these changes in the program code do not break existing software functionality or
introduce new defects. In many environments, Regression Tests need to be carried out on a daily basis,
making them ideal candidates for test automation.
In general, manual Functional Testing is:
- | Time consuming |
- | Prone to error |
- | A heavy investment in human resources |
- | Offers low re-usability |
- | Can't run unattended |
- | Tedious – and tedium leads to more errors! |
Automated Functional Testing by comparison is:
+ | Rapid – it executes tests significantly faster than human users |
+ | Accurate and Repeatable – this helps the defect replication & development |
+ | Liberating – it frees up valuable resources and saves testers from doing tedious work |
+ | Particularly useful when the same test needs to be repeated at least 3 to 5 times (Regression Testing),
or when a Business Process needs to be tested with variable data (data-driven testing). |
Automated Functional Testing is the fastest way to do more testing.
Automated Functional Testing is no longer a luxury, it's mandatory for development success.
It's the most effective way to get more out of existing Quality Assurance (QA) resources
and reduce costs at the same time.
Automated Functional Testing is the only way to increase your test coverage when
your resources are threatened. And it's the best way to reduce your workload.
Let regression tests run all night and free up your skills for valuable work that you enjoy.
Good quality control significantly reduces costs in development, deployment and support.
Embarrassing bugs cost multiple times more to correct when users find them instead of QA.
Great QA stops these problems before release and that immediately benefits the bottom line.
Applications are getting more complex. Testing is getting more demanding.
There's too much to test and not enough people or hours to do it all.
Your workload is getting heavier every day and you need more testing, not less.
Automated testing can lighten your workload.
Pepgo Testing recommends Functional Testing with HP QuickTest Professional.
HP QuickTest Professional is ideal for Regression Testing. It enables the capture,
verification & replay of user interactions and allows data-driven testing.
It also allows organized storage of test results into HP TestDirector for Quality Center.
HP QuickTest Professional is easy to use, but extremely powerful because it allows
full programming using VBScript (Visual Basic Script). In addition to the built-in
HP QuickTest Professional functionality, this allows also to use all of the Visual Basic
functionally, for example direct access to databases (via ODBC), to the file system
(via the Windows FileSystemObject), or to the Microsoft Windows Operating System
using Windows Scripting Host.
HP QuickTest Professional supports many different environments, such as Web, SAPGUI,
Terminal Emulation, and many more.
HP QuickTest Professional data sheet (661 KB)
While HP QuickTest Professional is in our opinion the best Functional Testing tool,
there are a number of open source alternatives available. However, it must be considered
very carefully if the lower initial price of such open source tools justifies the often
steeper learning curve and the often limited possibilities, particularly when it comes to
programmability and support of environments other then web.
One popular open source alternative, Selenium, is an open source framework for web application testing.
The tests can be written as HTML tables or coded in a number of programming languages
and can be run directly in web browsers. Selenium can be deployed on Microsoft Windows, Linux,
and Apple Macintosh.
|