1. Manual Testing
Q. What is Software Testing??
Ans. Validating the application if all the client’s requirements are implemented or not…
Q. Why do we need a specialist Tester??
Ans. Developers can’t do systematic and complete Testing. Developers will assume few things to be working fine as they
are owners of the work..
Q. How testing is helpful for a company??
Ans. i. To make sure all client requirements are implemented.
ii. If we collect Metrics from the project, it would be helpful for successful planning and execution of next project.
Q. What is Test Metrics??
Ans. The data/statistics collected from the project about the How it is executed/What went well/What went wrong..
i.e About i. Defect Metrics
ii. Schedule Metrics
iii. Effort Metrics (Man hours/ Man days)
Project Life Cycle (SDLC)
1.
2.
3.
4.
5.
6.
7.
Business Req Collection {Business Analyst or Senior Project members}
Feasibility Analysis {Leads/Manager}
System Requirement Collection { Business Analyst or Senior Project members }
Design {Architects, Developers}
Coding {Developers}
Testing {Testers}
Release & Maintenance {Rel- Testers, Main- Develoeprs&Testers}
2. Technical
Business Requirement
Feasibility Analysis
Schedule
Financial
System Requirement Collection
Project Plan
UI
System Requirement
Functional Requirement
Functional
Security
Performance
Environment
UI Design (Screen Design)
Database Design
High Level Design
Application Design
Low Level Design
Design
Coding & Unit Testing
Traceability
Matrix
(Build
Release)
Testing
Problems
Release & Maintenance Phase
Change Request
3. Test Life Cycle:
Req Documents:
1. BRS
2. SRS (System Requirement Specs)
3. Functional Requ Specs (Optional… the same data can be managed using SRS only)
4. Usecase
Q. What is the diff b/w SRS and a Usecase??
Ans. SRS will be one doc for one project which will have the detailed information about all the project
requirements. Usecase document is the detailed information about one requirement. i.e One project will have
multiple usecases.
Q. What will be the content of a UseCase Doc??
Ans. Req Description, Users, Triggered Event, Pre Conditions, Flow, Alternative Flows, Exceptional Flow,
Success Criteria.
Q. What do we call the Database Design Doc??
Ans. E-R Diagram (Entity Relationship Diagram)
Q. What do we do in High level Design??
Ans. 1. Architecture of the project is identified. (1-Tier, 2-Tier, 3-Tier.. n-Tier)
2. Modularization of the project is done.
4. Q. Who is responsible for Release and maintenance??
Ans. Tester will be responsible for Release.
Developer, Testers will be part of Maintenance.
Q. What is Enhancement project??
Ans. The project which is already developed, tested and in use but we need to add few new features.
TEST PLAN
Test plan is a document which maintains information like What to test, When to test and How to test.
We use Requirements and Project Plan as the inputs for test Plan preparation.
Test Plan Template:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
Title
Revision History
Objective of the Document
Scope of the Document – Work Allocation will not be there in TP.
Objective of Testing – Quality Deliverable and Metric collection plan??
Brief Description of the Project
Test Environment ( This is identified from System Requ)
Critical Functionalities
Functionality not to be tested – 3rd party involvement / Enhancement project
Test data requirement and collection
Automation Analysis
Test Strategy ( What phases of testing to be used in project, sequence of testings, I/P and Exit Criteria)
Training Plan( Technical/ Domain/ Softskill)
Effort Estimation ( Effort will be represented in Man Hours.. it can be calculated using Function Point
Analysis/Work Breakdown structure )
Resource Requirement ( HR/SW/HW)
Scheduling ( Detailed schedule for all phases of Testing)
Input Criteria (What inputs are required and how they Should be??)
Exit Criteria (What deliverables testers need to provide and how they should be??)
Acceptance Criteria
Test Suspension & Resumption Criteria ( Suspen – Show Stopper or any core functional bug)
Test Completion Criteria ( When all test cases are pass , when the available time is over)
Test Deliverables (Test plan, test case Doc, Traceability Matrix, Test results, Bugs, Application, User Guides etc )
Standards to be followed
Bug Classifications ( i.e based on Severity and Priority)
Bug Tracking ( We identify the tool to be sued for bug communication)
Test Metrics (We don’t collect Metrics here but we identify what Metrics to be collected??)
Documents Referred
5. Severity: How the Bug is affecting the functionality or Req or Application
Input Criteria: 1. Documents: Only reviewed docs are acceptable inputs.
2. Application: Unit Tested application along with Release Notes and Installation document will
be the acceptable input.
Unit Testing: A quick testing done by developer to make sure that the application is ready for thorough Testing.
Release Notes: A document with info as: Features implemented in current release.
Changes w.r.t previous release
Any known issues in the current release.
Input Criteria is also called as Entry Criteria.
Exit Criteria: 1. Documents: Only reviewed docs are acceptable deliverables
2. Application: Application meeting acceptance criteria.
Acceptance Criteria: This is defined by client at the time of project agreements. It is the set of rules defined by
client under which he would accept the application.
Q. What is an Error/Bug/Defect?
Error: Any deviation from requirement is called as error.
Bug: If the error is identified in Testing, it will be called as Bug
Defect: If the error is not identified in the testing but it is identified in production/client usage, it will be called as
defect.
Severity: How the bug is affecting the functionality or requirement or application. It is always assigned by a
Tester.
1. Critical
2. High
Severity
3. Medium
4. Low
6. Show Stopper (S1)
Functional
Critical
(S2)
Completely (S2)
Regular Functionality
Bug
Partially (S3)
Non Functional (S4)
Priority: How the bug is affecting the release or testing or Business. It is generally assigned by Lead or Business Analyst.
In exceptional cases, Testers may assign this value too.
1. Critical
Show Stopper
2. High
Next Release fixers
3. Medium
Delayed
4. Low
Like to have
Priority
Q. What do you test in a Coffee Vending Machine??
Q. What are the uses of a Pen other than Writing??
Testcase :
a. Systematic
b. Simple
c. Complete
d. No Duplicates
Coffee Vending Machine:
1. Packaging
2. Whether a User manual exists or not??
3. What is the size/color/shape/ .. all Look and Feel
4. Power (What are the connection type, voltage, socket type etc..)
5. If Voltage is less than min??
6. If Voltage is more than Max??
7. When system is switched on. What is the time taken to get ready?? ( Is it displaying a message saying pls
wait..)
8. What happens if contents are empty??
9. What happens if contents are not sufficient??
10. What happens if it is insufficient funds??
11. What happens if it is not a coin??
12. Test the selections?? i.e Coffee/Tea/Milk/Hot water etc..
13. What is the quantity??
14. What is the quality i.e Mixture
15. What is the temp??
16. How much time it is taking to give a cup of coffee??
7. 17.
18.
19.
20.
21.
22.
23.
How much time is the wait time at the beginning??
How is the flow of the coffee??
What happens if the coffee cup if full??
What happens if I insert a coin and then again insert a coin??
Incomplete Transactions??
How do people identify what is coffee button/tea button?? ( labels and pictures)
Availability of stand/empty cup holder/Overflow Tray..
Uses of Pen:
1. Pointer
2. Ruler
3. Insulator
4. Paper Binder
5. Book Mark
6. Advertisement media
7. Stress reliever
8. Collection
9. Ear Bud
10. Good Gift Item
11. Show Piece
12. Punching tool
13. Paper weight
EX : 1
Name
Age
Email
Conf Email
DOB
SAVE
TestCase:
1.
2.
3.
4.
5.
6.
7.
DELETE
If all the controls are there or not??
Look and feel of them?
Cursor should be in name
Min and Max size of inputs
Mandatory Check
Type of allowed inputs
If age allows ABC??
CLEAR
8. 8. Will Save button click save the data or not??
9. What happens if I click on Delete?
9.1 What happens if I have only one matching record?
9.2 What happens if I have multiple matching records?
9.3 What happens if we don’t have any matching records?
10. What happens if I click on Clear?
We should not write random test cases/ we should not miss any test cases..
Types of test cases:
1. User Interface UI: Test cases for Look and feel
UI Elements: Colors, Fonts, Shape, Spelling, Grammar, Alignments, Visibility, Enable, disable etc……
1. Usability : {User Friendly support application}
a.
Default cursor focus
b.
Tab & Order (Tab should be implemented and tab order should be left to right in down word
Direction.)
c.
Default Submit Button: For default submit button on click of enter key the button with
positive action should be triggered.
d.
Shortcut keys ( Save – Alt+S; Delete – Alt+D)
e.
Tool Tips ( Messages during mouse over action)
2. Validation: Validations are implemented to avoid invalid data processing.
Ex: Age should not allow ABC etc..
3. Functionality : Test cases for all possible conditions of the functional requirements.
EX : 2
Name
Age
Email
Conf Email
DOB
SAVE
DELETE
CLEAR
Note: From the above screen Tab should move in only in input fields. All are mandatory fields complete data write all
possible test cases.
Domain: The set of acceptable inputs of an input field.
Validation for DOB:
1. Should be in MMDDYYYY format
2. MM should not be greater than 12, date should not be greater than 31, year should be from 1850 to 2400
3. Data-Month Validations.
4. It should not be future date.
5. Age and DOB should be matching.
9. Validation of Age: (Years)
1. Should be from 0-150
2. No spl chars, no alphabets except space, period.
Testing Methodologies (Approach): There are three methodologies
1. Black Box Testing
2. White Box Testing
3. Gray Box Testing (Not IMP)
1. Black Box Testing: Testing the application by using the test cases that are developed using requirements and design.
Black box test is also called as Functional Testing. (Opaque Testing)
It doesn’t require any programming knowledge or any knowledge in the project implementation.
2. White Box Testing: Testing the application by using the test cases that are developed from code is called as white box
testing. It is also called as Structural Testing. (Glass Box)
Code is used for writing Test Cases but not to test the code. Testing will be carried out on Application only.
3. Gray Box Testing: It is the extension of black box testing ie we test the application by using some of the settings and
configuration information for simulating different test case conditions.
Qes : How do you test if a software is installed in your system are not.
Ans : Using registry information we verify if the software is intalled or not.
Registry HLM Microsoft IE Current Version
Req: An application which should allow X,Y as inputs and it should display Y,X.
Design:
10. Code1: x,y, z
Z=y;
y=x;
x=z;
Code2: x, y
X=x+y;
y=x-y;
x=x-y;
Code3 : x, y
X= x*y;
y=x/y;
x=x/y;
Testing Techniques:
1. White Box:
1. Statement Coverage
2. Condition Coverage
3. Loop Coverage
4. Branch Coverage
5. Path Coverage
1. Statement Coverage: Every line of code need to have at least one test case.
2. Condition Coverage: All the conditions in the code need to be tested.
3. Loop Coverage: All the possible loops in the program need to be tested to make sure that there are no
infinite loops.
4. Branch Coverage: All possible braches of the program flow need to be tested.
5. Path Coverage: All individual paths of program need to be covered with one test case at least. The
possible paths are identified using the Program Flow diagram.
Advantage:
1. You know the internals, so you can write detailed testcases.
Limitations:
1. Testers should be knowledgeable in Coding.
2. If any requirement is missing in code, we can’t identify it.
2. Black Box:
1. Boundary Value Analysis: Testing the Boundaries and adjacent values of the inputs. The limits of the
domain are called as Boundaries.
Domain: The set of acceptable inputs for any input field is called as Domain.
Eg1: Age
Min -1, Min, Min+1 , Max-1,Max, Max+1 (-1,0,1,149,150,151)
11. Eg2: Marks (-1, 0, 1, 34, 35, 36, 49, 50, 51, 59, 60, 61, 99, 100, 101)
Eg3: Income Tax ( -100 Cr 100001
150001
250001
EG4: Height ( 0.99, 1, 1.01
4.99, 5, 5.01 )
1000Cr)
2. Equivalence Class Partitioning: This is not a testing technique but it is a sampling technique. i.e we
can pick required no of samples with in the given range at equal intervals.
Eg: 4 samples b/w 150001 to 250001
170001, 190001, 210001, 230001
Equivalence classes are taken in Positive range as well negative ranges also.
3. Error Guessing: With exp and knowledge, we will write test cases for the possible errors.
Assignement:
1. Write the test cases for Self Info page?
2. Write the test cases for below form..
Req: X1, Y1 are mandatory input fields which accept values from 0 to 10. Z1 is an output field. After
entering X1, Y1 on click on generate button, a random integer in between X1 and Y1 should be generated
and populated in Z1.
White Box Testing Sample Prog:
1. int a,b;
2. If (a>b)
3. printf (“A is Big”);
4. else
5. printf(“B is Big””);
Statement Coverage:
TC1: a=4, b=5 Steps/Expected Result …. Coverage: { 1, 2, 4, 5}
TC2: a=5, b=4 Coverage ….. { 1,2,3}
Condition Coverage:
What are the no condition stmt in prog? Ans. 1 condition stmt
TC1: a=3, b=4
TC2: a=3, b=3
TC3: a=4, b=3
Ex3:
12. Req: A, B are the mandatory input fields, which accept values from 0-10. C is an output field. After
entering valid values in to A, B, on click on Generate button, a random integer in between A, B should be
generated and displayed in C.
Test Case Template:
Test
Case ID
Test Case
Title
Steps Or Input
Repro
Expected
Results
Actual
Result
Status
Req ID
Module
Author
Remarks
Ex:
Test Case
ID
Test Case Title
TC_001
Application Launch
1. Click on YM Shortcut in desktop
/Programs Menu
YM Should be opened
TC_002
Login Function
1. Open YM
2. Enter ABC and click on Login button
An error msg should
be displaced saying
Enter " Use Name &
Password"
Steps Or Input Report
Expected Results
13. TC_003
TC_004
TC_005
Login Function
1. Open YM
2. Enter ABC login button
3.Click on login button
An error msg should
be displaced saying
Enter " Use Name &
Password"
Login Function
1. Open YM
2. Enter ABC as login and XYZ as
password. Which is a wrong password
3.Click on login button
An error msg should
be displaced saying
Please verify your
credentials and try
again.
Messaging
1. Open YM
2. Enter ABC login and XYZ as
password and click OK.
3.Select on a friend who is online and
double click
A popup window
should be displayed
with to address as
friend address
Note :
1. Open YM
2.Select a friend who is online and
double click
Test Case Characteristics:
Test case should be:
1. Simple
2. Detailed
3. Systematic
4. Independent
5. No Duplicates
6. Complete Testcases