Inflectra White Paper Series: Testing
Software Testing
Inflectra: Software Built For You
Our one goal is to help you
succeed. We care deeply about
giving you the best quality service
Methodologies
and support you’ve ever had.
As many users, projects, tests,
releases, items, API calls as you
want. All pricing is based on
concurrent users.
Flexible options to make your
life easier. Use on desktop or
mobile; your servers or our cloud,
sensible add-ons, fairly priced.
Why Choose SpiraTeam as Your Software 10 Top Things to Look for in a Software
Testing Tool? Testing Tool
SpiraTest® manages your project’s requirements, test cases, bugs and 1. manage your project’s requirements, test cases, bugs, and issues in
issues in one integrated environment, with full traceability throughout one integrated environment
the software testing lifecycle.
2. can manage, schedule, and execute manual and automated tests
• SpiraTest is a complete, out-of-the-box quality management plat-
3. open architecture that lets you integrate with different testing tools
form, with requirements management, test case management and
bug tracking fully integrated from day one 4. flexibility to use third-party requirements-management and de-
fect-tracking tools when needed
• SpiraTest makes the managing and tracking of your testing easy, it
allows you to quickly configure different test plans for the differ- 5. supports templates, tests, and parameterized data-driven testing
ent hardware/software combinations and make sure that all of the 6. works across a range of platforms and devices, including mobile
requirements and test cases have been fully tested on them
7. fully customizable workflows and configurable field values
• SpiraTest is an open, extensible platform, with a rich library of
8. rich dashboards of key information that drilldown to the source data
add-ons and extensions that let SpiraTest integrate with all of the
most popular unit, functional and load testing tools on the market 9. customizable reporting available in a variety of different formats
• SpiraTest comes with a powerful set of customizable dashboards 10. end-to-end traceability from requirements to tests to defects.
that consolidate all of the most importing testing and QA metrics
onto a single page, so that you can make real-time decisions.
Visit us at www.inflectra.com for a free trial
Or get in touch with us: sales@inflectra.com, 1-866-572-5878 or +1 202-558-6885 (international)
Copyright 2006-2017, Inflectra Corporation
What Are Software Testing • Acceptance Testing - The acceptance testing is the was something that was tested after-the-fact. With Testing Practices
final phase of functional software testing and involves the rise in cyber-crime and the awareness of the
Methodologies? making sure that all the product/project requirements risks associated with software vulnerabilities, appli-
Software testing methodologies are the different approaches have been met and that the end-users and customers cation security is something that should be designed Test Automation
and ways of ensuring that a software application in particu- Testing is one of the greatest consumers of manpower in
have tested the system to make sure it operates as and developed at the same time as the business
lar is fully tested. Software testing methodologies encompass software development projects. Anything that can reduce
expected and meets all their defined requirements. functionality. Security testing tests the software for
everything from unit testing individual modules, integration this manual effort is going to seriously reduce the cost
confidentiality, integrity, authentication, availability,
testing an entire system to specialized forms of testing, of overall development. Test automation saves time and
and non-repudiation. Individual tests are conducted
such as security and performance. effort because, unlike some project activities, it is repeated,
to prevent any unauthorized access to the software.
sometimes frequently, so you would do well to consider test
• Usability Testing - The usability testing part of a management tools with in-built support for automation. If
Importance of Testing Methodologies testing methodology looks at the end-user usability you plan to use an XUnit testing framework such as TestNG,
As software applications get ever more complex and inter- aspect of the software. The ease with which a user NUnit and JUnit, make sure your test management tool has
twined and with the large number of different platforms and can access the product forms the main testing point. an integration to the one(s) you have chosen.
devices that need to get tested, it is more important than Usability testing looks at five aspects of testing:
When reviewing test management tools with some built-in
ever to have a robust testing methodology. The more robust learnability, efficiency, satisfaction, memorability, and
test automation, look for the ability to manage test scripts
a testing system, the easier is to ensure that software prod- errors.
as well as schedule and launch tests both locally and on
ucts/systems being developed have been fully tested, meet
remote hosts to help with remote testing. If the test tool can
their specified requirements and can successfully operate in
pass parameters to your test cases, whether they are manu-
all the anticipated environments with the required usability
al or automated tests, then score it bonus marks!
and security.
Take away: If you plan on using test automation, integrate it
with test management.
Functional Testing
The functional testing part of a testing methodology is
typically broken down into four components - unit testing, Exploratory Testing
integration testing, system testing and acceptance testing The problem with planned testing is that it needs to be
– usually executed in this order. Each of them is described predictive. Planned functionality can, of course, be anticipat-
below: ed and tests created to verify it, but testing for the unex-
pected or testing to ensure there is no additional, unwanted
• Unit Testing - this refers to testing of individual soft-
functionality, is much harder to plan for. Sometimes the
ware modules or components that make up an applica- Non-Functional Testing best technique is to simply allow the test engineer to see
tion or system. These tests are usually written by the In most testing methodologies, functional testing involves
where his or her instinct leads. Exploratory testing does not
developers of the module and in a test-driven-devel- testing the application against the business requirements.
advocate arbitrary or ad hoc behavior on the part of the
opment methodology (such as Agile, Scrum or XP) they Functional testing is done using the functional specifica-
tester, but promotes less structured, experience driven test-
are actually written before the module is created as part tions provided by the client or by using the design speci-
ing which changes and grows as it is performed. It is also
of the specification. Each module function is tested by fications, such as use cases provided by the design team.
a technique to be used in addition to scripted testing, not
a specific unit test fixture written in the same program-
On the other hand, non-functional testing involves testing in place of it. Consequently, the capabilities required from a
ming language as the module.
the application against the non-functional requirements, test management tool for the support of exploratory test-
• Integration Testing - these test the different modules/ which typically involve measuring/testing the application ing are rather different from those of planned and scripted
components that have been successfully unit tested against defined technical qualities (also known as the ‘-il- testing.
when integrated together to perform specific tasks and ities’ because they all end in ‘-ility), for example: vulner-
Look for tools that provide a means to track exactly what
activities (also known as scenario testing). This testing ability, scalability, usability. Some examples of non-func-
the tester does so that the conditions can be reproduced
is usually done with a combination of automated func- tional testing are described below: • Compatibility Testing - The compatibility testing should a defect be discovered or in case it seems that the
tional tests and manual testing depending on how easy refers to testing that the product or application is
• Performance, Load, Stress Testing - There are several test should become part of the scripted test set. Capturing
it is to create automated tests for specific integrated compatible with all the specified operating systems,
different types of performance testing in most testing key strokes, screen shots and user comments provides a
components. hardware platforms, web browsers, mobile devic-
methodologies, for example: performance testing is good way to integrate exploratory testing with scripted test-
es, and other designed third-party programs (e.g.
• System Testing - this involves testing the entire system measuring how a system behaves under an increas- ing in a controlled way, especially when it comes to adding
browser plugins). Compatibility tests check that the
for errors and bugs. This test is carried out by interfac- ing load (both numbers of users and data volumes), new tests to future regression testing. If the tool is also able
product works as expected across all the different
ing the hardware and software components of the entire load testing is verifying that the system can operate to provide comparative metrics of scripted versus explor-
hardware/software combinations and that all func-
system (that have been previously unit tested and at the required response times when subjected to its atory testing, it can help you determine the effectiveness of
tionality is consistently supported.
integration tested), and then testing it as a whole. This expected load, and stress testing is finding the failure each and where best to put additional test effort.
testing is listed under the black-box testing method, point(s) in the system when the tested load exceeds
Take away: Explore the options that support exploratory
where the software is checked for user-expected work- that which it can support.
testing and integrate that with formal testing.
ing conditions as well as potential exception and edge
conditions. • Security, Vulnerability Testing - Previously, security