Manual Testing

This is very core testing process in practical experience and it helps to start testing effectively.

Definitions of Manual Testing

Error: A human action that produces an incorrect result.

Fault: A manifestation of error.

Failure: When a fault is encountered, it may result in a failure. A failure may be caused by many faults or a fault can cause many failures.

Defect: Difference between Expected Result and Actual Result.

What is software Quality?

Quality software is reasonably error or bug free, delivered on time and within budget, meets requirements and/or expectations.

However, quality is obviously a subjective term. (Customer’s point of view – Fit for use. Developer’s point of view – meeting customer requirements). It will depend on who the ‘customer’ is and their overall influence in the scheme of things. A wide-angle view of the customers of a software development project might include end-users, customer acceptance testers, customer contract officers, customer management, the development organization’s management, accountants and testers future software maintenance engineers, stockholders, magazine columnists, Each type of customer will have their own ‘quality’ – the accounting department might define quality in terms of profits while an end-user might define quality as user-friendly and bug-free

This is very core testing process in practical experience and it helps to start testing effectively.


Functional Testing  and Non-Functional Testing

Functional Testing

Testing developed application against business requirements. Functional testing is done using the functional specifications provided by the client or by using the design specifications like use cases provided by the design team.

Click here to read more about Functional Testing

Functional testing covers

Unit Testing
Smoke testing / Sanity testing
Integration Testing (Top Down,Bottom up Testing)
Interface & Usability Testing
System Testing
Regression Testing
Pre User Acceptance Testing (Alpha & Beta)
User Acceptance Testing
White Box & Black Box Testing
Globalization & Localization Testing

Software Testing Life Cycle

Software testing life cycle identifies what test activities to carry out and when (what is the best time) to accomplish those test activities. Even though testing differs between organizations, there is a testing life cycle.

Software Testing Life Cycle consists of six (generic) phases:

  • Test Planning,
  • Test Analysis,
  • Test Design,
  • Construction and verification,
  • Testing Cycles,
  • Final Testing and Implementation and
  • Post Implementation.

Methods of Verification:

Inspection

An inspection is more formalized than a ‘walkthrough’, typically with 2-6 people including a moderator, reader, and a recorder to collect notes. The subject of the inspection is typically a document such as a requirements spec or a test plan, and the purpose is to find problems and see what’s missing, not to fix anything. Attendees should prepare for this type of meeting by reading thru the document; most problems will be found during this preparation. The result of the inspection meeting should be a written report. Thorough preparation for inspections is difficult, painstaking work, but is one of the most cost effective methods of ensuring quality.

Walkthrough

A ‘walkthrough’ is an informal meeting for evaluation or informational purposes. Little or no preparation is usually required.