Application testing fundamentals of software testing
Application
test
is an activity that every software tester performs daily in his
career. These two words are extremely broad in practice. However,
only the core areas and the most important areas are discussed. The
purpose of this article is to touch all primary areas so that readers
can receive all the basic briefing in a single place.
Categories
of applications
Whether
it is small calculator software with only the basic arithmetic
operations, or an online enterprise solution; there are two
categories of applications.
• Desktop
• Web
Application
Test Methods
there
are only 3 universally accepted methodologies:
Black
Box:
in the black box Test, the AUT is validated against its requirements,
taking into account the inputs and expected outputs, regardless of
how the inputs are converted into outputs. Testers are least
concerned with the internal structure or code that implements the
application's business logic. There are four primary techniques to
design test cases for black box testing:
• BVA
(boundary value analysis)
*
EP (equivalence class formation)
*
Decision tables
*
State transition tables (and diagrams)
White
Box:
main focus of this methodology is to validate how the application's
business logic is implemented through code. Internal structure of the
application is tested, and the techniques available to do this are :
• Code
coverage
*
Path coverage
Grey
Box:
practically speaking, this is a mix of black box and white box. In
this methodology, the tester mainly tests the application as in black
box. But for some business-critical or vulnerable application
modules; Tests are performed as a white box.
Application
Test Tools
There
are at least 50 test tools available on the market today. This
includes both paid and open source tools. In addition, some tools are
purpose-specific, such as UI Tests, functional tests, DB Tests, load
tests, Performance tests, security tests, and Link validation tests,
and so on. The general concept of" application testing " is
its functional testing. Our focus is therefore on functional test
tools.
Here
is a list of the most important and basic features provided by almost
all function test tools.
*
Record and Play
*
You can parameterize the values
• Script
editor
*
Run (the test or script, with debug and update modes)
• Report
of the session
Below
is the list of the few widely used function test tools.
*
HP QTP (quick test Professional)
• Selenium
*
IBM Rational Robot
*
Test Completed
*
Push test
*
Telerik
Application
Test Cycles
As
soon as the AUT is ready for testing, the practical Phase of the test
cycle begins, in which the testers actually run the test cases on
AUT. Note that here the test cycle, regardless of test levels (unit,
module, Integration, System and user acceptance) and test
environments (Dev, QA, Client Replica, Live) will be discussed.
Smoke
test:
the first testing cycle that is wide and shallow in approach. The
purpose of the smoke test is to verify that there are no crashes in
the application and that it is suitable for further Tests.
Sanity
Testing:
the second test cycle, which is narrow and deep in its approach. Its
purpose is to verify that a particular module is functioning properly
and is suitable for full testing.
Functional
tests:
the proper and complete examination of the application is carried out
in this cycle. The focus of this work lies in the verification of the
business logic of the application.
Regression
tests:
this is the last test cycle in which the Bugfixes and/or updates are
checked. In addition, regression testing also ensures that there are
no malfunctions in other areas of AUT due to fixes and changes.
Comments
Post a Comment