Search

Manual Testing Material

Software :

Software is a collection of programs, data, and instructions that tell a computer how to perform

specific tasks. 


It is the non-physical (intangible) component of a computer system that enables hardware to function.

Software can be categorized into two types.

      1.     System software

      2.      Application software

 

System software

 These soft wares are used to provide interface between the system components.

 Ex: - All OS’s like windows, Linux,…etc.

 

Application Software

These are developed based on client business needs in order to perform their business activities

In App s/w again divided into two types


 Product based and Project based

 a)      Product based: - When we develop the application based on Organization standard requirements and that can be sell to any customer in the market

 Ex: - Ms Word is a product of Microsoft,

          QTP is a product of HP

 b)    Project based:-When we develop the application based on the specific client requirements and that should be delivered that particular client only.

 

Ex:-www.cus.com is a project for “constanza” client. www.qasanjeev.com is a project for “Sanjeev”

 

Software Testing: It is a process to identify correctness, completeness and measure the quality of developed Software Application.

  • S/W Testing will help to deliver reliable Application to the customer and it will reduce maintenance cost of project.
  •  Objective of Software testing is to identify defects, when change defects quality improves

Bug : 

In software testing, a bug is the informal name of defects, which means that application is not working as per the requirement. When we have some coding error, it leads a program to its breakdown, which is known as a bug. The test engineers use the terminology Bug.
If a QA (Quality Analyst) detect a bug, they can reproduce the bug and record it with the help of the bug report template.

Defect: - 

It is a deviation b/w expected result to the actual result when Application under test
When the application is not working as per the requirement is knows as defects. It is specified as the difference from the actual and expected result of the application or software.
In other words, we can say that the bug announced by the programmer and inside the code is called a Defect.

Issue : 

An issue is a broader term that refers to any problem or concern that affects the quality, functionality, or usability of a software product or project. An issue could be a bug, but it could also be a feature request, a change request, a question, a feedback, a complaint, or a suggestion.

Error :

The Problem in code leads to errors, which means that a mistake can occur due to the developer's coding error as the developer misunderstood the requirement or the requirement was not defined correctly. The developers use the term error.



Fault:

The fault may occur in software because it has not added the code for fault tolerance, making an application act up.

A fault may happen in a program because of the following reasons:

  • Lack of resources
  • An invalid step
  • Inappropriate data definition
Failure:

Many defects lead to the software's failure, which means that a loss specifies a fatal issue in software/ application or in its module, which makes the system unresponsive or broken.

In other words, we can say that if an end-user detects an issue in the product, then that particular issue is called a failure.

Possibilities are there one defect that might lead to one failure or several failures.

For example, in a bank application if the Amount Transfer module is not working for end-users when the end-user tries to transfer money, submit button is not working. Hence, this is a failure.


Correctness: - Variable implemented functionality is working as per expectations or not by performing operations.

Completeness:- Verify all the client business needs or requirements are covered or not in terms of the functionalities in this Application.

 In a simple S/W testing is a combination of verification and validation

Software Quality: - As per produces products (Development team) when App fulfilled client with all the client requirements when he will say it is a qualify Application

 As per client or customer and user point of view when App fit for use, according to their business needs then we will say that is a quality Application.

 Following are the major factors depends on software quality:

 1)    Budget or cost 2) In time release 3) Reliability 

i)                 Meet client requirements in terms of functionality

                                                                                        ii)               Meet client expectations

Software Testing Methods

 

In general organization follows 4 types of methods to validate application 

1). Manual testing 

2). Automation testing

3). Performance Testing

4). Security Testing

 

Manual Testing: Without using any automation tools test engineer will verify the actual behavior of App by performing the operations or transactions. For manual testing test engineer will prepare test cases which are used to validate Applications.

 Advantage: - simple & easy

 Disadvantages:-

          ·       Time consuming [more time taken to execute]

          ·       Human errors

 Automation TestingValidating Application functional features/functional Test cases by running Automation framework Test scripts is called Automation Testing

 Advantages: - 1) less time to execute 2) There is no possibility of human errors 

                           3) Possible for more iterations.

Disadvantages: - 1) Automation tools are expensive 2) Skilled automation test engineers are required

Performance Testing

Performance testing is a non-functional software testing technique that determines how the stability, speed, scalability, and responsiveness of an application holds up under a given workload. It’s a key step in ensuring software quality, but unfortunately, is often seen as an afterthought, in isolation, and to begin once functional testing is completed, and in most cases, after the code is ready to release.

The goals of performance testing include evaluating application output, processing speed, data transfer velocity, network bandwidth usage, maximum concurrent users, memory utilization, workload efficiency, and command response times.

Security Testing

Security testing is an important aspect of software testing focused on identifying and addressing security vulnerabilities in a software application. It aims to ensure that the software is secure from malicious attacks, unauthorized access, and data breaches.

Roles and Responsibilities of a Functionality Test Engineer:

 1)  Analyze the client requirements [BRS, AS IS, RFP, To Be Process & FRS]

2)  Identify the test Scenario’s 

3) Prepare Test cases

4)  Develop Automation script

5)  Review on Test cases & Automation Test script

6)  Execution of Test cases and script

7)  Defect Reporting

8)  Retesting & Regression Testing

SDLC [system development life cycle] 

It describes development process of a software project or product to fulfill the client requirement with in the specified cost & time

 Following are the phases involved in SDLC

          1)    Requirements collection

          2)    Requirement Analysis

          3)    Design

          4)    Coding

          5)    Testing

          6)    Release & maintenance




Requirements collection: - It is an initial activity performed in SDLC
 
In this phase B.A will collect requirements with an interaction of client and collected requirements will be documented as BRS\URS\CRS
 
BRS: - It describes brief description of core logic of client business needs in terms of who are the user for the Application & required services for those users in that application



After preparation of BRS doc they perform feasibility study to check project is acceptable or
not in order to develop where as BA will play a key role in feasibility study

Following are the factors analysed in feasibility study:-

 

1)    Budget feasibility

2)    Time feasibility

3)    Requirements are reliable or not in terms of technology to develop


After feasibility study if project is acceptable then business analyst will intimate to the client by releasing RFP and SLA documents.

 

Requirement Analysis:-

 

In the phase system analyst will analyse client business needs from BRS based on that he will prepare detailed document called FRS/ SRS

 

FRS describes detailed functionality of each component like which date it should accept & how the component should work

 

Design: - In this phase design Architect will design application architecture to fulfil the client requirements which are specified at FRS. In this phase following are the doc prepared by DA

 

1)    GUI design doc

 

2)    Data base Design Doc

 

3)    Application Design Doc / TDD

 

i)                 GUI  Design Doc :- It contains prototypes of an application

 

üPrototype will help to foresee the future implementation of an 


       application & better understandability of functionalities

ü  Proto type is a sample application without functionality (dummy screens)

ü  Prototypes are not mandatory for all projects


ii)               Data base Design Doc :- It describes about database structure and application in terms of no of tables relation b/w those tables & rules implemented in database

 

iii)              ADD/ Technical Design doc :-  it contains 2 types of sub doc’s 1)

 

HLD 2) LLD

 

HLD: - It describes no of modules required for a project & relation b/w those modules

 

Ex:- For a Hospital management system may contain following modules.



Modularization: splitting the projects with set of modules for easy development of application is called Modularization

 

Module: It is a some portion of application which have ssthe set of similar requirements of functionalities

 

LLD: - There should be individual LLD for each module in order to develop the logic while writing the programs

 

Note: - Design docs are important for developers in order to write the programs

 

Coding / Implementation: - In this phase developers will write the program using programming language (for windows based application) or scripting languages (for web based application)

 

O/p of this phase is source code document (s.c.doc)

 

Testing:- After completion of coding programs are available for execution. Initially developers will perform unit test & integration testing using W.B.T (white box testing techniques)

 

After that separate testing team will perform system testing using B.B.T (Black Box Testing)

 Then client also performs user acceptance testing Release & Maintenance:-

 

Release: - After system testing & creating user acceptance testing on our work product then we deliver application to the client for further use at live environment is called “Release or Go live or Production

 

Maintenance: - while using the application client can identify some defects or he may require some other functionality in the existing system then he will send change request (C.R) to the development team

 Based on initial agreement (SLA), CCB (change control board) will work on change request

 

Common problems in SDLC:-

 

1)    Poor Requirements:- when requirements are incomplete & not clear to understand that will be a problem to develop the application

 

2)    Unrealistic schedule :- If too much of work is crammed/ assigned in too little time that will be a problem

 

3)    Inadequate testing/ Incomplete testing :-

 

In present scenario it is difficult to estimate how much testing is sufficient to validate application


4)    Dynamic changes in requirement :- When client continuously sending changes in                        requirements then that will be a problem

 

         5)    Miscommunication: - lack of communication b/w Developers , clients , DA , SA..Etc. 



  





SQL Tutorial

  • Download DB Visualizer/DBeaver, These are Open Source tools.
  • Download and Install DBeaver Latest Version from "https://dbeaver.io/download/"
  • Create Sample Database in DBeaver
Syntax for Create Database

CREATE DATABASE DATABASENAME