Académique Documents
Professionnel Documents
Culture Documents
During the development of an application many builds are created when adding features
or fixing defects. Because of the rapid development cycle, testing must be performed
repetitiously. The biggest benefit of automated testing tools is that they can save time.
Manual Testing
• Time Consuming
• Low Reliability
• Human Resources
• Inconsistent
Automated Testing
• Speed
• Repeatability
• Programming Capabilities
• Coverage
• Reliability
• Reusability
Automated
Generate Synchronize script Add Run tests or suit
automated playback to application Verification of tests
script performance statements
Testing process
• Go through the application requirements documents such as BRD and SRS
• Identify application’s risk aspects, set priorities and determine scope and
limitation of tests
• Determine test approaches and methods such as Unit, Integration, functional,
system, load, Performance and acceptance tests
• Determine test environment requirements (hardware, software, communication
etc)
• Determine testing tools requirements
• Determine test input data requirements
• Prepare Test plan overview and then Test plan in detail and document the same
and have needed reviews and approvals
• Collect Test data and write Test cases
• Have needed reviews/inspections/approvals of Test cases
• Prepare Test environment and testware, obtain needed user
manuals/references/documents/configuration guides/installation guides
• Set up Test tracking processes/logging and archiving processes
• Obtain and install software releases
• Perform tests
• Evaluate and report results with developers
• Attending status review meetings
• Track problems/bugs and fixes
• Retest as per the requirement
• Maintain and update Test plans, Test cases, Test environment and Testware
throughout the Software Development Life Cycle
Software Testing
Testing involves operation of a system or application under controlled conditions (normal
and abnormal) and evaluating the results.
• Title
• Revision history of document including authors, dates and approvals
• Table of contents
• Purpose of document
• Objective of testing
• Software product overview
• Related documents such as BRD, SRS
• Standards and metrics such as SEI CMM, ISO and IEEE
• Naming conventions for variables, objects and windows
• Overall s/w project organization and personnel/contact-info/responsibilities
• Test organization and personnel/contact-info/responsibilities
• Testing priorities and focus
• Type of tests Unit, System, Integration and Scope and limitation of testing
• Test approach such as type of test, feature, functionality, process, system,
module
• Test environment – h/w, o/s, s/w, database and interfaces to other systems
• Tools for bug reporting, screen capture and file comparison
• Test tools to be used including versions and patches
• Script maintenance process and version control
• Reporting requirements and testing deliverables
• S/W entrance and exit criteria
• Appendix
Test case
A Test case is a document that describes an input or action and an expected response,
to determine if a feature of an application is working correctly.
• Test case identifier/name/date/status (new or released for retest)
• Objective
• Application name and version
• Function, module, screen, object, feature etc., where the bug occurred
• Test conditions/set up
• Input data requirements
• Severity level
• Expected result and Actual result
• Tester details
Testing WWW
These are basically client/server applications with web server and client browsers.
Considerations should be given to the interaction between HTML pages, TCP/IP
communications, Internet connections, firewalls, applications that run in web pages
(such as Applets, java script, plug-in applications), and applications that run on the
server side (such as CGI scripts, database interface, logging applications, DHTML, ASP
etc).
Other considerations include: