Software Testing Overview
There can be a large number of possible combinations and exhaustive testing is never possible.
Testing should start as early as possible in the Software Development Life Cycle.
Using automation tools allows a tester to spend more time on the more intellectual tasks of test planning, analysis and design.
The use of test tools provides more predictable and consistent results as human failings such as manual-keying errors, misunderstandings, incorrect assumptions, forgetfulness etc are eliminated.
Static Analysis - Review of the code by someone with knowledge of the programming language.
Unit testing - Conducted by developers and test the unit of code (aka module, component) he or she developed.
Integration testing - Integration testing is executed by testers and tests integration between software modules. It is a software testing technique where individual units of a program are combined and tested as a group.
Incident management - The collection and processing of incidents raised when errors and defects are discovered.
Test monitoring - Identifies the status of testing activity on a continuous basis.
Risk management - Identifies, analyses and mitigates risks to the project and product.
Types of Software Testing Tool
See also List of Software Testing Tools
Incident Management Tool
Creates an incident report and maintains details about the incident as it progresses through the incident life cycle.
Used to raise new defects and process them through the defect life cycle until resolved.
Can be used to prioritise defects.
Can be used to check whether the defect or similar defects have been raised before.
Requirements Management Tool
Used by business analysts to record, manage and prioritise the requirements of a system.
Can be used to manage changes to requirements. If requirements change then test cases may also need to change.
Helps prevent the problem of changes not being communicated to all interested parties.
Configuration Management Tool
For managing the different software and hardware components that comprise a complete build of the system. Also for managing various complete builds of systems that exist for various software platforms over time.
Software Testing Skills
Understanding of the Agile Methodology
Creation of User Stories
Creation of user stories derived from the business requirements.
Testing Time Estimation
Use historical metrics or get experts to agree between them.
Configuration management is controlling the versioning.
When running test cases it is important that the tester is aware of the version of code being tested and version of the test being run.
Lack of configuration management may lead to: loss of already-delivered functionality, reappearance of previously corrected errors and no understanding of which version of test was run against which version of code.
Configuration Management Tools
Manual Test Script / Manual Test Case
Difference Between Test Script and Test Case
A test script is a step-by-step description of all the actions and data needed to perform a test. In automated testing, the term test script will usually be used to describe each automated test that will be performed.
A test case describes a specific idea that is to be tested, without detailing the exact steps to be taken or data to be used.
Test Case Design Techniques
All Content ©2020 WebRef.eu