Download - functional testing
![Page 2: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/2.jpg)
What is software testing ?
Testing is process of executing the software intentionally to find the bugs in it. ( or )
To differentiate the customer requirements and actual function of the software or application .
![Page 3: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/3.jpg)
What is quality in software testing?
Quality is a process where the it meets the customer or user requirements
They are two types to ensure the quality of software :-
A) Quality Assurance
B) Quality Control
![Page 4: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/4.jpg)
What is Quality assurance
Quality Assurance is a process of finding the bugs in the initial stage of software development .
This Quality Assurance includes process ,procedure , requirements and verification of standards in developed software
It is subset of software life cycle.
It focuses on processes and procedures .
![Page 5: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/5.jpg)
Examples Of quality Assurance ?
Verification of software
ISO
IEEE
![Page 6: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/6.jpg)
What is quality control?
Quality Control is a process which validate the software after developed and before giving it to the customer.
Quality Control focuses on finding a bug after the software is developed and before giving it to the customer
It is a subset of quality Assurance
![Page 7: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/7.jpg)
What is verification ?
Verification is a step by step process which includes the
Documentation
Review the document and perform test report
Design
Review the design and perform test report
Built review
Review the code and perform test report
![Page 8: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/8.jpg)
Advantages of verification ?
It is performed at the initial stage of the project .
This process is effective in reducing the errors or finding the errors at the starting stage of the software development
This lower the damage of the software development .
![Page 9: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/9.jpg)
What is validation ?
Validation is done after the software is developed and to find the defects before it goes to customer hands .
It focuses on the Defects that enter in to the system
Validation can be performed after UAT availability.
![Page 10: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/10.jpg)
Advantages of validation ?
We can find the defects before delivering the product .
Include better products and services which gives good reputation for a company and higher revenue from having more satisfied customers.
![Page 11: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/11.jpg)
Disadvantages of validation ?
Include more man power or operations to maintain quality control .
adding more time to the initial process.
![Page 12: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/12.jpg)
Principles of Testing (Session 4)
The tester have to follow the certain principles in this corporate world :-
Principle 1: Testing shows presence of defect
Yes , Testing will reduces the effect of bugs or error in the software ,But no software in world is 100% bug free.
Principle 2 : Exhausting testing is impossibleWhile testing the software we will see the important areas or delicate areas but we cannot do the test on all combinations .
![Page 13: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/13.jpg)
Principle 3 :- Early testing This is so important that we have to start the test at beginning of the software development stage .This will reduces the bugs or defects in the software .
Principle 4: defect clustering Tester should not be lazy while testing he have to test each and every Conner of the software to find bugs .
![Page 14: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/14.jpg)
Principle 5 : pesticide paradoxIT is kind of disease repeating the activity number of time , In testing we have to be patience while repeating the test on same software and we have to see that we are using different types of testing methods to find the new bugs in the software.
Principle 6 : Testing is context dependent We have to perform different types of tests based on software requirement it may be e- commerce software or safety critical software or banking software .
![Page 15: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/15.jpg)
Principle 7 :- absence of errors fallacyTester should come out from a mind set on testing and finding the bugs in the software is done , but this not encouraged in the corporate world , tester should test the software keeping in the mind requirements of client and user end .
Principle 8 : Pro activenessTester should be very active and should always try to know coming features which may include in between the software development and also adopt the new testing techniques .
![Page 16: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/16.jpg)
Session 5 :- What is application
Application is a program or a group of program designed for the end user
Lets discuss about 3 type’s of applications :-a) web applicatiomnb) desktop applicationc) mobile application
![Page 17: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/17.jpg)
Web application
Web application is a program that is stored on the server and on the request of user it is delivered through browser .Technologies used for delivering web application:-a) Javab) .netc) PHPd) Google toolkit
![Page 18: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/18.jpg)
Desktop Application
The application which runs as stand alone in laptop or desktop which contrast with web application That needs web browser to run.
Technologies used for running This application:a) cb) C++d) Visual studios
![Page 19: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/19.jpg)
Mobile Application
Mobile application is program That designed to run on smart phones , tablet pc , wireless computing devices .
Technology that supports this application is :a) HTML 5b) objective –cc) Apache cordova
![Page 20: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/20.jpg)
What is a architecture
An architecture is a primary qualities of a system quality which includes modifiability, security and performance .
It show which components are involved in the design and what is the role of each component
It also tells how these components will communicate with each other.
![Page 21: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/21.jpg)
Types of architecture
2-tier architecture 3-tier architecturen-tier architectureMVC architecture
![Page 22: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/22.jpg)
Day 6 special class on SDLC
SDLC standards for software development life cycle .
To implement a successful software or project we have follow certain phases in software development life cycle
There are different phases in SDLC
![Page 23: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/23.jpg)
phases of SDLC
Planning
Analysis
Design
Built
Test
Deployment
![Page 24: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/24.jpg)
Planing phase of sdlc
The motive of this phase is to understand the requirements of the project .
Business architect and project manager will have a discussion in this phase and list out the requirements in a chart called “ Requirement charter”
Out come of this phase is “Project Charter”
![Page 25: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/25.jpg)
analyis phase
In this phase the analysis on the requirements is done by the business analyst .
Business analyst will document the requirements according to the end user
Out come of this phase is “ BRD” (business requirement document )
![Page 26: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/26.jpg)
Design phase
In this design phase the business architect will design the software with different types of tools .
Out come of this phase is a) high level Design
![Page 27: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/27.jpg)
Built phase
In this phase the different types of developers ex: web developers , app developers are involved to built .
Out come of this phase is : low level document
![Page 28: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/28.jpg)
Test phase
In this phase the test engineer will execute the software or product using tools to find the bugs in it .
Out come : Defect report
![Page 29: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/29.jpg)
Deployment phase
In this phase there is a team called “ environment management “ this team will deploy or install the software in live environment .
Out come : deployment software
![Page 30: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/30.jpg)
Types of approaches to be followed in product development
Sequential approach
Incremental approach
Iterative approach
Prototype approach
![Page 31: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/31.jpg)
Sequential approch
If a project runs in a SDLC phases in correct order it is called sequential approch.
Example of sequential model is water fall model and v- model
This approach is suitable for stable technology and application architecture
Well understood stable requirements
![Page 32: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/32.jpg)
Incremental approach
In incremental approach the software system is broken down in to sub systems .
Incremental approach is suitable for
Project requirements are know but there is no stable requirement
![Page 33: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/33.jpg)
Prototype approch
This approach is built and thrown which is suitable for the small projects were requirements are not mentioned .
![Page 34: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/34.jpg)
Iterative approch
This kind of approach we use in long term projects , where changes takes place in requirements rapidly.
Here we don't require 100% requirements
Agile methodology is the best example for this approach .
![Page 35: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/35.jpg)
Waterfall model
Waterfall model is a sequential design process used in software development process.
In this model the requirements should be stable
It requires good planning
![Page 36: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/36.jpg)
Flow chart of water fall model
review Review
100% 100%
Review
100%
Review
100%
planing
analysis
design
built
Test
![Page 37: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/37.jpg)
Working in waterfall model
The requirements should be stable while working on waterfall model
If the first phase(planning) is 100% correct than we have to move on to second phase(Analysis phase)
To implement the project in waterfall model we require good planning .
![Page 38: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/38.jpg)
Advantages of water fall model
Stable process
All the phases are done 100%
This model is simple and easy to understand and use.
This model works well with small projects were the requirements are very well understood .
![Page 39: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/39.jpg)
Disadvantages of waterfall model
No early conversation with all the team involved in development of product.
No early testing
It will not allow any business changes .
No early software
No early customer feedback
![Page 40: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/40.jpg)
How to handle requirement changes in water fall model
Step1 :- client will request requirement changes notice (RCN)
Step 2:- We will create requirement change notice
Step 3:- our project manager will distribute the requirements to all the team members in project
Step 4 : analysis report will be generated regarding the impact on project .
![Page 41: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/41.jpg)
Step 5 : we will send requirement changes to client
Step 6 :On the approval of client we will handle requirement change .
![Page 42: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/42.jpg)
What if requirements changes rapidly in waterfall model
We will request the client to change the approach from sequel to iterative approach .
We can also handle the production defects in the 1month of free service .
![Page 43: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/43.jpg)
Iterative development model
Dividing the project in to number of releases
If the requirements are rapidly changing we can request the customer to move on this model .
We can get the early feedback from the customer for each release
![Page 44: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/44.jpg)
Advantages of iterative approch
Early software
Early feedback
We can reduce the risk to maximum level
Less costly to change the scope and requirements
Agile is the present methodology based on this iterative approach
![Page 45: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/45.jpg)
Agile method
Agile software development is a software development model based on iterative approach where the requirements and solutions revolve around the self- organized cross functional team .
In this Agile the team having the 5-9 members developers , testers , designers , analyst, Were these people will be doing cross functional activities .
No naming is encouraged like senior , junior ,leader
Everything is transparent
No documentation , more interactions will happen to save the time and to improve quality of work .
![Page 46: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/46.jpg)
Principles of agile
Agile is also called as quick moving
Agile will break the task in small increments
In agile we will breakdown the software in to number of releases .
While working in agile we have to deliver the software within 2-4 weeks of time .
Each team should involve in complete SDLC .
Main goal of agile is to delivering the working software .
In agile more Interactions should happen rather than documentation .
![Page 47: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/47.jpg)
Advantages of agile
Customer satisfaction
Late changes in the requirements are welcomed
Going with more interactions between business people and developers .
Agile is against to prepare document .
![Page 48: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/48.jpg)
Difference between agile and water fall model
Agile is individual and -> water fall process and Interactive model. Tools.
Delivering the working -> documentation is requiredsoftware . -> we cannot contact with
Customer collaboration other team members .
Responding to late cha -> No changes are encouragenges in the requirement -> It is sequential approach.
Less documentation and more Interactions withbusiness people and developers .
It is a iterative approach .
![Page 49: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/49.jpg)
Testing classifications
Testing is classified in to two
Static testing Dynamic testing
![Page 50: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/50.jpg)
Static testing
Static testing is done before the compilation of the software .
Static testing is done at the initial stage of software testing life cycle.
Requirement review
Design review
Code review
![Page 51: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/51.jpg)
Dynamic testing
Dynamic testing is done after the compilation of software .
In dynamic testing software is executed intentionally to find the defects .
Examples of dynamic testing
White box
Black box
Grey box
![Page 52: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/52.jpg)
Unit testing :- testing testing the each unit and each modules of the code, It involves testing of source code by developers.
Integration testing :- Each module is grouped and tested by the developer . He ensures whether each module is working according to the requirement .
.
![Page 53: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/53.jpg)
White box testing
White box testing is based on requirements and also considering the internal knowledge of the code.
In this white box testing missing requirements cannot be handled .
Statement coverage :execution of each statement
Conditional coverage: if / else execution testing
Branch coverage : all parts of the program
Loop testing : for loop/do/while testing in code
Memory leakage : checking for unnecessary variables
Tool used in white box : J unit tool
![Page 54: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/54.jpg)
Example of white box testing
Print first ten natural numbers
Code for the above program
#include<stdio.h>int main()
{
int i = 1;
for (i = 1; i <= 10; i--)
{
printf("%d", i);
}
return (0);
}
![Page 55: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/55.jpg)
Test case for the above code
Enter the natural number 1 and execute out put : 0
Enter the natural number 2 and execute out put : 1
Enter the natural number 9 and execute
Out put : 8
Enter the natural number 10 and executeout put : 9
![Page 56: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/56.jpg)
Bug we found in above code
From the above test case we can conclude that there is some defect in the code .
#include<stdio.h>int main()
{
int i = 1;
for (i = 1; i <= 10; i--) we given that i-- instead of
{ i++ .
printf("%d", i);
}
return (0);
}
i--)
![Page 57: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/57.jpg)
Black box testing
Black box testing is done by considering requirements but not using internal code knowledge.
Black box testing is a strategy where testing is based on requirements and functionalities .
Challenges in black box testing
Exhaustive testing
Accidental coincidence
Sometimes we may get right output for wrong reason.
![Page 58: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/58.jpg)
Exhaustive testing : testing the requirements with all combinations is impossible ,
Accidental coincidence :- sometime we may get correct out for wrong input .
Acceptance testing
System testing : testing the whole system to see whether requirements are meeting with the customer .
![Page 59: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/59.jpg)
Black box testing whitebox testing
1) Black box testing requires requirements 1) White box testing requires requiremen and not internal structure of the code . Ts and internal structural code.2)mainly appalicable to higher levels 2) Mainly applicable to low level testingof testing like acceptance testing unit testing and integration testing.system testing 3) generally software developers are 3)Generally independent software responsible in this white box testing testers are responsible in this Black – box testing .4) programming knowledge and 4) programming knowledge and implementation knowledge implementation knowledge required.not required .5)we will write test cases based 5) we have to write detailed test cases on requirements. Design .
![Page 60: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/60.jpg)
Grey box testing
Grey Box testing is combination of both white box and black box testing .
While testing u need to have a partial understanding of internal structure and also the requirements .
For designing the test cases you need to now the code / internal structure and conduct testing like black box.
![Page 61: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/61.jpg)
What is functional testing
Functional testing is testing the system based on the client requirements whether it is working or how well it is performing .
For example if we take web application field level validation : checking whether all fields like(user name ,password )are workingbusiness level validation: checking the rules of each field is working or not .
End to end flow : checking whether whole application is working as per the requirement .
![Page 62: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/62.jpg)
What is non – functional testing ?
Checking whether how well the system is responding.
Some of the sub types in no functional testing are :-
Usability
Compatibility
Security
performance
![Page 63: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/63.jpg)
A) Usability: checking whether the application is easy to use .
Easy navigations
Unnecessary content
Time taken to accomplish the task .
B) compatibility or installation : checking whether the application is supporting the various browser versions and os versions or not .
C) performance : checking the speed of the application by applying certain tests like stress ,load indurance , spike
![Page 64: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/64.jpg)
Example for non functional testing
lets test the ball pen
Whether the pen is writing well not
Whether the pen is writing on wet surface, rough surface,.
Bend the refill in all the directions and now we start writing this is called stress testing .
Apply force and try to write this is called load testing .
![Page 65: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/65.jpg)
Function and non functional
Here the testers test how well the system is performing.
Functional testing is based on client requirements .
Testing the application against business requirements .
It is a part of system testing
Functional testing means validating the behavior of a application.
this testing covers integrating testing, sanity testing, smoke testing, regression testing,
Here tester tests how well the system is responding.
Non- functional testing is based on clients expectations .
Testing the application against performance requirements.
It is also a part of system testing
Non – functional testing means validating the performance of the application.
This testing covers performance,load,stress,security,instillation,compatibilityand usability.
![Page 66: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/66.jpg)
Performance testing
Performance testing is use to check the speed of the application .and this application goes to various stages of testing under this performance testing .A) usability testingb) load testingc) stress testing d) spike testinge) Endurance testing
![Page 67: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/67.jpg)
Spike testing
Spike testing is testing the application or system by applying max load on and they also checks by unloading it.
For example : if we take the jntu results are declared and on the same day all the users have logged in and the server is crashed due to over load and they also test this jntu site behavior by unloading it.
![Page 68: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/68.jpg)
Load test
By applying load and they calculate the load it can take and at what load it is going to crash .
For example a bank domain server will accept 1000 requests and not more than that , if the applications are still coming at some point the bank application crashes .
![Page 69: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/69.jpg)
Endurance test
Endurance means capacity / fitness , testing the system how much a system can handle the load for continuous period of time .
Best example is bank application , on closing days of banks we continuous load on that days so we test the load by keeping in the mind endurance testing , we test on these days how the system or application sustain the continuous load on the application or system.
![Page 70: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/70.jpg)
Security (non functional testing)
Checking the credentials and secure login process of an system / application .For example :
In a bank application or in atm machine the authorized person with his atm card should insert the card and get the amount and after the transcation is completed it exists the window and go to home page , but if it fails in going to home page there is a security issue in the application.
![Page 71: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/71.jpg)
Principles in security
Confidentiality : The information sent by person a to Person B the information should be viewed by only B.
Integrity : Getting an information from the correct person.
Authentication : conforming the identity of a person and giving access to him .
Authorization : Giving access to required features for authenticated person .
![Page 72: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/72.jpg)
Availability : availability of information to authenticated authorized person .
![Page 73: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/73.jpg)
Security testing techniques
Access to application
Password cracking
Data protection
Sql injection
Cross file crypting
Phishing
![Page 74: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/74.jpg)
Retesting and regression
Retesting is a process of testing the tested software or product once again to find if there is a bug .
Regression testing is a process of testing the retested software to see whether the fixed changes which are done in retesting will not have any impact on other functionalities .
![Page 75: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/75.jpg)
When we can go for retesting ?
Retesting is performed when we find a bug or we think that there will be a bug at that point of place we need to go for re-testing , we have to test the application again and again .
![Page 76: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/76.jpg)
When we can go for regression
When we found a bug in retesting and when it is been solved .
The application once again goes for complete testing called regression testing to find the defect if any and also to check whether the fixed bug doesn’t shows inpact on other functionalities .
![Page 77: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/77.jpg)
Is it possible to do entire regression?
Regression testing should ideally happen on every single code commit (and if you've got a good build pipeline, this means doing testing on every single build). This ensures that if a bug has been introduced in the latest commit, that it found as quickly as possible. If you only have to go back one commit to fix a problem, that's super easy to fix and troubleshoot.
![Page 78: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/78.jpg)
Convetional testing
Testing with process, need have preplanned approach , scripted approach.
Business analyst will give the requirements
Business architect will design based on requirements .
Tester will develop test design based on requirements.
Developer will create the build
Tester will execute the application .
![Page 79: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/79.jpg)
Characteristics of conventional testing
Preplanned approach
Organized approach
Pre defined set of test cases
Process oriented
![Page 80: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/80.jpg)
Adhoc Testing
Testing without any process , procedures,organised approach, is called Adhoc testing.
Characteristics of Adhoc testing :-
Pre-planning is not required in this Adhoc.
No need to follow the process.
Pre-planned set of test cases are not required .
Simuntanesouly thinking design and execution.
This type of testing is completely based on testers creativity and memory of past events.
Testers with good experience and knowledge
![Page 81: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/81.jpg)
Disadvantages of adhoc testing
There will be no control over test coverage .
This test may not cover 100%
Requirement coverage may not be covered .
![Page 82: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/82.jpg)
Principles to perform adhoc
Exploratory testing will be under supervisor control.
Supervisor will allocate charter to testers.
Charter means a functionality will be tested .
Supervisor will identify sessions to test charter
Session is a time period to test a functionality
At the ending of the adhoc testing they go for debrief meeting to discuss the obervations .
![Page 83: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/83.jpg)
When testing team will go for adhoc or explonatory testing ?
When there is no requirements of the product or software.
When there is a lack of time .
![Page 84: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/84.jpg)
What is adhoc regression testing ?
Testing the previously working or retested functionality without writing test cases is called adhoc regression testing .
![Page 85: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/85.jpg)
What is alpha testing ?
Testing conducted by the end-user at developer location to check the acceptance criteria .
This test is performed based on requirements but not based on functional and non functional requirements .
Business requirement : what customer is expecting .
Functional requirement : how to implement feature .
![Page 86: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/86.jpg)
What is beta testing?
Testing the product by end – user at end – user location is called beta testing .
End user , business architect (BA) , client will perform .
This testing is performed based on business requirements only .
This test is always performed by customers at their own site .
![Page 87: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/87.jpg)
Alpha and beta
It is always performed by the developers at the software development site.
Sometimes it is also performed by Independent Testing Team.
Alpha Testing is not open to the market and public
It is conducted for the software application and project.
It is always performed in Virtual Environment.
It is always performed within the organization.
It is the form of Acceptance Testing.
Alpha Testing is definitely performed and carried out at the developing organizations location with the involvement of developers.
It comes under the category of both White Box Testing and Black Box Testing.
It is considered as the User Acceptance Testing (UAT) which is done at developer’s area.
It is always performed by the customers at their own site.
It is not performed by Independent Testing Team.
Beta Testing is always open to the market and public.
It is usually conducted for software product.
It is performed in Real Time Environment.
It is always performed outside the organization.
It is also the form of Acceptance Testing.
Beta Testing (field testing) is performed and carried out by users or you can say people at their own locations and site using customer data.
It is only a kind of Black Box Testing.
.
It is also considered as the User Acceptance Testing (UAT) which is done at customers or users area.
![Page 88: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/88.jpg)
Smoke test
Smoke test is a kind of test that revels the major failures of the application .
Smoke test is a type of testing that revels or shows whether the application is ready for testing or not .
![Page 89: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/89.jpg)
Steps performing smoke test
Business analyst will give the requirement
Developers will build the design.
Team of testers perform smoke test on this build to ensure to send this build to next level of testing or not .
Group of testers will test the application which is passed in smoke test .
Environment team will deploy the software.
![Page 90: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/90.jpg)
Smoke test characteristics
This smoke test should be a quick test should be completed in 3-4 hours but not entire day .
End to end test
Testing the main functionalities of the software
Scripted approach
![Page 91: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/91.jpg)
Example of smoke test
Smoke test of a pen :
a – pen is writing or notb- color of the ink c - gripper is present or notd- fixing the cap of the pen.
![Page 92: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/92.jpg)
Example 2 for smoke test
Mobile a- check incoming and out going callsb- check displayc- check incoming and out going smsd- check charge of the battery e- check signal symbol is showing or not
![Page 93: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/93.jpg)
Sanity testing
Sanity testing is testing the application completely after the application is qualified in smoke test .
Sanity testing is detailed test when compare to smoke test .
Sanity testing is performed after the smoke test.
Testing the application at customer environment to check whether the already tested application is responding in customer environment .
![Page 94: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/94.jpg)
Steps when sanity testing is performed
Business analyst will give the requirements
Developer will build the design.
Testers will perform smoke test
If the application is qualified in smoke test it is passed to next level of testing
The team of testers will perform detailed test and generate test cases .
The defects are sent to the developer
Developer will solve the defects and pass again to testers .
Testers will retest the changes done on application
Now testers will start regression
Testers found defect they will pass it to developer
Developer corrects the defects
At regression we stated application is working fine
Then at the last 2 to 3 hrs will go for sanity testing .
![Page 95: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/95.jpg)
Sanity smoke
It is more in-depth
In Sanity testing we need not follow previous test cases .
It is not end to end test
It is not in depth just testing the major functionalities of the software .
In smoke testing we need to follow scripted approach
It is end to end test .
![Page 96: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/96.jpg)
Installation testing
Testing the installations procedures and configurations for the software to deploy .
This installation testing is performed by deployment team.
![Page 97: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/97.jpg)
Localization testing
Testing the applications with different type of languages .
But the tester must now the language before he performs test .
![Page 98: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/98.jpg)
Mutation testing
Mutation testing means intentionally the developer will inject the defects in to the application to test the testers performance on testing the application .
![Page 99: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/99.jpg)
Levels of testing
Testing is performed at different levels
1) unit testing 2) Integration testing 3) system testing 4) system integration level testing 5) user acceptance testing 6) Incremental integration testing
![Page 100: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/100.jpg)
Unit testing
Unit testing is a level of testing where developers will execute the build intentionally to find the defects .
In this unit level testing each module or each component is tested in the system or software .
This is a white box testing
This is done by developers
It is functional and non functional
![Page 101: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/101.jpg)
Example of unit testing
Let us take the mother board of system and we start unit test on each component whether it is working or not .
Testing the each key of a key board
![Page 102: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/102.jpg)
Integration testing / assembly level testing
Integration or assembly level testing is a process where we test the interconnectivity between the different components in a system .
This testing is performed by developers .
This testing done only after the system is successfully completed unit test .
![Page 103: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/103.jpg)
Example of integration testing
Testing the system when keyboard and mouse are connected together
Testing all the components grouped in mother board of a system.
![Page 104: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/104.jpg)
System testing
System testing is a process of validating the entire system .
This system testing performed by test engineers.
This test is done only when the system is passed in integration level testing .
Tester will perform this test to check the functionality and non- functionality through black box methodology .
![Page 105: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/105.jpg)
System integration level testing
SIT (system integration level testing ) is a process of testing the whole system in different modules .
In this SIT level different type of test engineers from different projects are involved to perform this test .
To perform this test first the system has to undergo system level testing .
This test is performed through black box methodology .
![Page 106: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/106.jpg)
UAT (user Acceptance testing )
User acceptance test is done by BA, END user AND client these people will perform test in acceptance criteria .
BA will test according to the requirements .
This test is done through black box testing methodology .
Alpha testing and Beta testing comes under this testing .
After the UAT testing the permission is given to the environment management team to deploy the product in live environment .
![Page 107: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/107.jpg)
Incremental integration testing
Testing the each component in the system which is successfully completed the unit level testing .
This testing consists of two techniques a) top down approachb) bottom up approach
Top down approach : In this approach highest level modules are tested first and lowest level modules are tested after that .
Bottom up approach : This testing begins with unit testing followed by higher level combinations of units or modules and testing them .
![Page 108: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/108.jpg)
What is stub and drivers in Integration testing
Stubs are called top down integration testing
For example :
If we have Modules X, Y and Z. X module is ready and we need to test it, but it calls functions from y and z (which are not yet ready). To test at such a module, we write a small dummy piece a code which Simulates Y and Z and which will return values for X. This piece of dummy code is called Stub in a Top down Integration Testing.
![Page 109: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/109.jpg)
Drivers
Drivers are called bottom up integration test .
For example :-
We have modules for Y and Z and X module is not ready we need to test Y and Z module , so develop a piece of dummy code for x which return the value for Y and Z which piece of dummy code is called drivers .
![Page 110: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/110.jpg)
What is scrum ?
Scrum is a iterative and incremental agile software development methodology for developing a product .
Scrum is a part of agile .
People involved in scrum are :- a) product ownerb) scrum masterc) scrum team members
![Page 111: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/111.jpg)
Responsibilities of product owner?
Product owner will define the features of the product .
Product owner will decide the release date of the product.
Product owner should be a single person and he is responsible for product backlog .
Product owner can accept or reject the work results .
Product owner will represents the customer requests .
![Page 112: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/112.jpg)
Responsibilities of scrum master ?
Scrum master will take care of entire team members in scrum .
Scrum master will train the scrum team on scrum .
He is responsible for enacting scrum values and practices .
Frequent inspection by scrum master .
![Page 113: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/113.jpg)
Responsibilities of scrum team
In this scrum team there will be 5-10 members of cross functional typical team .
This is a full time work .
These scrum team members are self-organised and cross functional ,They wont have any titles or tags .
![Page 114: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/114.jpg)
Working in scrum
Sprint : sprint is a fixed time frame for delivering the working product to the customer in weeks but not months .
Epic / requirements : In a scrum frame work the business requirement development in a project is divided in to epics .
Story card : epic is divided in to story card.
Product backlog : overall story cards assigned to a project .
Sprint backlog : story cards which are assigned to particular sprint to deliver a working software to the customer .
Based on the client pirority we will deliver sprint backlog .
Sprint planning meeting : how many sprints can be delivered at a time .
![Page 115: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/115.jpg)
Scrum framework
Scrum event / ceremonies
Scrum roles
Scrum artifacts
Scrum event : a) goal of the sprintb) sprint estimation c) how many story cards have to be delvered to the customer.
![Page 116: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/116.jpg)
Scrum roles
The group of people involved in scrum project
a) product ownerb) scrum team c) scrum master
![Page 117: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/117.jpg)
Scrum artifacts
Product backlog : overall story cards assigned to a project .
Sprint backlog : story cards which are assigned to a particular sprint to deliver a working software .
Burndown chart : estimating the x-axis and y-axis or tracking the total work remaining and present the likely wood of remained goal .
![Page 118: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/118.jpg)
Different types of meetings in scrum
Daily scrum meeting
sprint review meeting
Sprint retrospective
Print planning meeting
![Page 119: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/119.jpg)
Diagrammatic representation of scrum
![Page 120: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/120.jpg)
What is kanban ?
kanBan is a new technique for processing a software development in highly efficient way .
Kanban tells us what to do , when to do ,what is pending , what is completed , what is to be delivered to customer .
![Page 121: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/121.jpg)
Features in kan ban
Visualize your work
Collaboration in real time
Subtasks
Built for speed
Time tracking with pomodoro support
Document and time attachment
Analysis (cumulative flow and lead cycle )
![Page 122: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/122.jpg)
Visualize your work
![Page 123: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/123.jpg)
This kanban gives you a excellent overview of your current suitation .
It shows you on dashboard “task to do “ “task assigned to me today “ “task in pending “ “task completed “”task ready to delivere to customer “
When working in a team of people you can instantly see what other people are working on right now, what has been done and what is coming up.
Kanban can also be used as a “lean project management tool.”
![Page 124: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/124.jpg)
Collaboration in real time
![Page 125: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/125.jpg)
When your working in a team when a one of your team member makes the changes in the kanban board rest all members in the team can view what changes are made .
For example if you add or remove any task on t he screen the sam e appears on rest of the members screen
![Page 126: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/126.jpg)
Sub tasks in KanBan
![Page 127: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/127.jpg)
By dividing your task in to sub tasks you can track how much progress you have made on a specific task .
When you complete the sub task you can check the boxes and the changes will automatically done without your action .
![Page 128: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/128.jpg)
Kan ban is Built for speed
![Page 129: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/129.jpg)
The things are done very quickly in this Kanban process .
Add , remove, or record will quicly done without frustrating you with loading .
![Page 130: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/130.jpg)
Time tracking with pomodorosupport
![Page 131: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/131.jpg)
You can track the time of your working progress by using a trimer technique called “pomodoro timer”.
You can set a timer for 25 min with fully focused worked before taking a break . And followed by another 25 min with another break .
![Page 132: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/132.jpg)
Document and file attachment in kan ban
![Page 133: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/133.jpg)
In kanban you can attach files, presentations,documents and other files to your tasks .
You can also attach the files present in orthobox,google drive and if you have any files on computer you can just drag and drop in drop file field area it will upload .
This feature is available in premium version.
![Page 134: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/134.jpg)
Analyze (cumulative flow ,leadtime and cycle)
![Page 135: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/135.jpg)
In kanban by using cumulative flow ,lead time and cycle charts we can find the bottlenecks in our workflow and we can add or remove the coloums or we can change the WIP limits (work in progress).
After we made changes in the project we have to check the statstics after a few days if you reached the intended effect .
This feature is available in premium version .
![Page 136: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/136.jpg)
Software test life cycle
Software test life cycle is process were the product undergo different type of testing phases.
It shows us the entire starting and ending of testing a software.
The starting is “requirement analysis and ending phase is deployment phase “ .
![Page 137: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/137.jpg)
Phases in STLC
Requirement analysis
Test plan preparation
Test cases preparation
Rtm
Test Environment readiness
Test execution
Defect tracking and management
Test execution report and signoff report
![Page 138: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/138.jpg)
Requirement analysis
In this phase tester will go through the requirements and understands the expectations of the customer
This phase helps to identify the scope of testing
If any requirement is not understood the tester can ask the business analyst .
The tester will derive the scenarios from this phase
Outcome of this phase is “testable requirements”
![Page 139: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/139.jpg)
Test plan preparation
Test plan preparation which describes the intended scope , approach ,and schedule of the test activities .
Test plan preparation is prepared by the test lead .
Test lead will manage , organize and schedule the testing activities.
![Page 140: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/140.jpg)
Test plan document consists of
Objectives
Scope of testing
Testing deliverabales
Roles and resposibilites
Assumption and risks
Contigency approch
Effect estimation
Schedule
Testing methodologies
Defect tracking
Entry exit criteria
Test automation
templates
![Page 141: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/141.jpg)
Test plan flow chart
Requirement analysis
Preparation of test scenarios
Test case
review
Fix the
test case
reviews before
approval
Preparation of test cases based on
scenarios approval
![Page 142: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/142.jpg)
What is test scenario
Test case scenario is a high level test condition which is derived from requirement analysis and it explains us what need to be tested .
When Business analyst will pass the requirements . Test engineer will prepare the test scenarios based on the requirements .
![Page 143: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/143.jpg)
Why we need test scenarios ?
Test scenarios are important because these scenarios makes us understand the complex functionalities in the project .
Test engineer can easily understand the highly level conditions in the system .
Test engineers are responsible for test scenarios .
![Page 144: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/144.jpg)
What is test case ?
The test case is a detailed specific condition which explains what need to be tested and how it need to be tested .
Test cases are derived from test scenarios
Test scenarios are derived from requirements
Test engineer will prepare test scenarios .
![Page 145: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/145.jpg)
Why we need test cases ?
Test case is helpful in documenting the test condition in an organized approach.
These test case are reusable while we are testing the defects .
Test case design helps in saving execution time.
Test case clearly describe what we are testing how we are testing.
![Page 146: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/146.jpg)
What are the qualities of good test cases?
Test case should be ease to understand .
Maintaining consistency
Test case should be reusable while finding defects .
![Page 147: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/147.jpg)
Why test cases are important?
Test cases are designed from test scenarios
Test cases helps in planning what we are testing .
Test cases are reusable while finding defects.
Test cases makes testers easy to test .
Verification or prevention of defects in the project
![Page 148: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/148.jpg)
Can we test an application without preparing test cases ?
Yes , this type of testing is called AD-HOC testing where testers will not follow any procedures or process , and they donot need any test cases .
![Page 149: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/149.jpg)
What is testing technique?
With minimum inputs we provide maximum coverage .
Q) why we are applying test design?
To provide maximum test coverage with minimum time.
![Page 150: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/150.jpg)
Different type of test designing techniques ?
Equivalence partitioning
Boundary valance analysis
Decision table testing
Error guessing
![Page 151: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/151.jpg)
Equivalance partitioning
Identify similar behavior elements which produces same output.
Test atleast with one value for each class .
Q) why do we need equivalence partitioning ?
To cover entire application with minimum effort
Each test case must have single focus.
![Page 152: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/152.jpg)
Boundary value analysis
Boundary value is analysis is derived from equivalence partitioning
It focus on the boundary
The steps using boundary value :
Identify equivalance class
Test equivalence of each class
![Page 153: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/153.jpg)
Example for boundary value analysis
In web application password field must contain min 3 characters and max 14 characters .
Testing using boundary value analysis
- test using a value between 3 – 14- test using a value less than 3- test using a value more than 14
![Page 154: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/154.jpg)
Decision table and error guessing
Decision table will help to capture the complex requirements of the project .
Error guessing : exploring the error messages associated with the system .
Use case integration : - a graphical representation between a actor and a action .
![Page 155: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/155.jpg)
RTM(requirement tracebility matrix)
In our project we Rtm which is located in Bitrix tool
RTM is a connectivity between requirement and associate test case
RTM is used to trace the orphan requirement in the project
Orphan requirement means the requirement which is not linked with any one single requirement .
RTM is used to trace the reusable test cases.
Reusable test case means which is linked with multiple requirements .
![Page 156: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/156.jpg)
Test environment readiness
Infrastructure management
Server configuration
Application Installation
Access permission
Test data loading
![Page 157: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/157.jpg)
Steps to deploy ment
Kill the existing file in the system server
Copy the new file in the developer server
Restart system server
![Page 158: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/158.jpg)
Who will deploy in your project ?
:- In my project developer will do deployment .
Q) Where you will maintain environment downtime tracker ?
:- In bitrix tool
![Page 159: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/159.jpg)
what will happen if application is not available to testing team ?
If we face a environment issue in our project we will go for following procedure in my project :-
We will create a critical severity defect
Will send a mail high imp mail to the developer team and environment management team .
We will update this information in environment downtime tracker which we are maintaining in bitrix tool .
![Page 160: functional testing](https://reader038.vdocuments.net/reader038/viewer/2022110201/55cddd26bb61ebb0208b484a/html5/thumbnails/160.jpg)
Test execution plan
In our project we divide the execution in cycles
cycle 1: we will test the entire test cases cycle 2: we will perform re-testing of the test cases cycle 3: we will perform regression testing