How do you test the middleware ? esp for an Online Banking
software?
Answer Posted / manju
Test Strategy for Middleware and Firmware
We have defined middleware and firmware and understand that
they are different, yet have many characteristics in common
when it comes to testing. The discussion of test strategy
for these types of software will include both middleware
and firmware, and can be extended to test any software
which is not accessed by a user interface.
Early Testing
Early testing will multiply the testing effectiveness of
any software application, regardless of technology.
However, in the world of middleware and firmware early
testing is most critical because finding defects at later
stages carries a higher penalty of rework. This is due to
the extent of integration with hardware and other software.
The problem with early testing in this environment is that
with so many integration dependencies, how does someone
create test harnesses and stubs that allow for an accurate
test? Manually, the job is possible, but can be
overwhelming when there are many interfaces involved. If
you are developing in a language that has tool support for
structural test case design and testing, you may find that
the job can be very easy. Specifically, for C++ and Java,
Parasoft (www.parasoft.com) has a great toolset to design
and perform structural tests, with a feature to
automatically create a test harness and test stubs. Similar
tools are available from International Software Automation
(ISA) www.softwareautomation.com.
Developer Testing
Developer testing is essential to avoid high rework costs.
To the testers, the software is a black box. Only the
developers have the view and access to the code to test all
conditions. In addition, not only are functional cases at
stake, but also the structural tests for memory boundary
violations and memory leaks.
My experience is that developers can test software if the
have a good process to follow, standards to show what is
expected of them in terms of testing, and a way to hold
developers accountable for the quality of their work.
Management must also be making the message loud and clear
that testing is part of the job and that quality is a
shared responsibility between developers, testers, QA, and
management.
An Object-oriented View of Testing
In the object-oriented view of testing, tests are isolated
at a smaller scope, yet can have high complexity due to the
interfaces with other objects. The object-oriented view of
testing must be able to deal with classes, methods, and
attributes and to validate those at a high level of
coverage.
In Shel Siegel's book, "Object-Oriented Software Testing,"
he describes the Hierarchical approach to O-O testing.
"The hierarchical approach is at the heart of the object-
oriented testing system. This test approach uses and builds
upon several well-understood testing techniques, tying them
together into a comprehensive testing system. The
hierarchical approach leverages the fact that "everything
is a system." It defines and applies testing standards for
several levels of software component: objects, classes,
foundation components, and systems. The hierarchical
approach designates as SAFE those components that meet the
testing standards for that kind of component. Once you
designate a component as SAFE, you can integrate it with
other SAFE components to produce the next-level component.
In turn, you test this component to the level of safety
associated with the component level it represents. SAFE is
always a relative state. It depends entirely on the
standards you choose to enforce, your application, your
attitude toward risk, and the specific risks and risk
management practices you adopt in your project. The
hierarchical approach provides guidelines for minimum
safety; you decide what is right for you."
Figure 2 - The Hierarchical Test Approach
Much more could be said about testing middleware and
firmware. This article is intended to provide a strategy
for testing and a starting point to start developing
detailed techniques. My best advice to you is to read the
books on Object-oriented testing by Shel Siegel and Robert
Binder, investigate the available test tools (new ones are
emerging all the time) and work at the developer level to
reinforce the criticality of testing.
Is This Answer Correct ? | 3 Yes | 1 No |
Post New Answer View All Answers
what are the priliminary expectations from smoke testing from developer and QA point of view
How would you finalize the number of resources/testers needed for the testing in the estimation ?
what are the disadvantages of selenium IDE..?
How to write testcases while we know only the datatypes for the fields
how many types of testings usually flow in different phases of SDLC
How would you do an Estimation?
hi can anyone provoide SRS for order processing system and intranet plz
Explain the deployment process?
As soon as you get a build ,what would you ask your testing team to do?
Explain the main differences between software review and software inspection or walkthrough
is all the test cases to be automized !!! if yes / no let explain the reason
what are the differences between product branch qualification as well as product qualification !!! if a product branch supports more than a product then what is the QA strategy towards the same
is QA expects any level of interaction from development engineer !!!
How would you finalize on testcases in estimation? Say you have 200 requirements. How would you come up how many testcases you are going to write for each requirements?
What are the main objectives of configuration management and version control?