WebRef.eu  - Internet Marketing and Online Business Resources  

Home / Site Map | Blog | TwitterTwitter | Contact


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.

Test Stages

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.

General Software Tools


Jenkins - Leading open source automation server. Provides hundreds of plugins to support building, deploying and automating any project.

Jenkins - Continuous integration software tool. Open-source, written in Java. For testing and reporting on isolated changes in a larger code base in real time. The software enables developers to find and solve defects in a code base rapidly and to automate testing of their builds.

TeamCity - Java-based build management and continuous integration server from JetBrains.

New Relic - Real-time performance insights into your software, infrastructure & customer experience. Know Right Now. 

Types of Software Testing Tool

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 Tools - By Type

Website testing tool.

Issue and Project Tracking Tools


Developed for agile teams. Used to plan, track and release software.

Test Automation Tools


Commercial and costly.

Supports VB Script. Less flexible than Selenium.


Selenium is a set of different software tools each with a different approach to supporting test automation.

One of Selenium’s key features is the support for executing one’s tests on multiple browser platforms.

Selenium IDE

If you are not experienced in programming, but still hoping to learn test automation this is where you should start and you’ll find you can create quite a few automated tests with Selenium IDE. 

Selenium IDE can be added to Chrome.


Automates anything you see on the screen. It uses image recognition to identify and control GUI components. It is useful when there is no easy access to a GUI's internal or source code.

Use as an add-on to Selenium to handle desktop components.

A freeware BASIC-like scripting language designed for automating the Windows GUI and general scripting.

Use as an add-on to Selenium to handle desktop components.

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

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

See Software Configuration Management Tools

Manual Test Script / Manual Test Case

Detailed Script:

Test Suite Id  
Test Case Id Unique Id
Priority Low, Medium or High
Designed By  
Test Environment (OS, Browser, Screen Resolution)  
Required Data  
Procedure and Conditions  
Expected Results  
Actual Results  
Cross Reference to Defect Report  
Executed By  

Quick Script:







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










Low Prices UK Shopping

Compare Prices
at LowPrices.co.uk

Home / Site Map | TwitterTwitter | Contact

All Content ©2018 WebRef.eu