0% found this document useful (0 votes)
19 views37 pages

Computer Application

Computer software

Uploaded by

mkkura1991
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views37 pages

Computer Application

Computer software

Uploaded by

mkkura1991
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 37

ECAP437

SOFTWARE ENGINEERING
PRACTICES PRACTICES

Ashwani Kumar
Assistant Professor
Learning
Outcomes

After this Lecture, you will be able to learn

• Test case

• Test case template


Test case

• The test case a group of conditions under which a tester


determines whether a software application is working as
per the customer's requirements or not

• A Test Case contains test steps, test data, precondition,


post condition developed for specific test scenario to
verify any requirement
Test case

• A test case is a set of instructions on “HOW” to validate a


particular test objective/target, which when followed will
tell us if the expected behaviour of the system is satisfied
or not.
Why test cases?

• To require consistency in the test case execution

• To make sure a better test coverage

• It depends on the process rather than on a person

• To avoid training for every new test engineer on the


product
To make sure a better test coverage

• We should cover all possible scenarios and document it,


so that we need not remember all the scenarios again and
again.
It depends on the process rather than on a person

• A test engineer has tested an application during the first


release, second release, and left the company at the time
of third release

• If the person is not there for the third release, it becomes


difficult for the new person. Hence all the derived values
are documented so that it can be used in the future.
To avoid giving training for every new test
engineer on the product

• When the test engineer leaves, he/she leaves with a lot of


knowledge and scenarios.

• Those scenarios should be documented so that the new


test engineer can test with the given scenarios and also
can write the new scenarios.
Best Practice for writing Test Case

• Test Cases need to be simple and transparent

• Create Test Case with End User in Mind

• Avoid test case repetition

• Do not assume

• Ensure 100% Coverage

• Test Cases must be identifiable


Best Practice for writing Test Case

• Implement Testing Techniques

• Self-cleaning

• Repeatable and self-standing

• Peer Review.
Test Cases need to be simple and transparent

• Create test cases that are as simple as possible. They must


be clear and concise as the author of the test case may not
execute them.

• Use assertive language like go to the home page, enter


data, click on this and so on
Create Test Case with End User in Mind

• The ultimate goal of any software project is to create test


cases that meet customer requirements and is easy to use
and operate.

• A tester must create test cases keeping in mind the end


user perspective
Avoid test case repetition

• Do not repeat test cases. If a test case is needed for


executing some other test case, call the test case by its
test case id in the pre-condition column
Do not Assume

• Do not assume functionality and features of your


software application while preparing test case. Stick to
the Specification Documents
Ensure 100% Coverage

• Make sure you write test cases to check all software


requirements mentioned in the specification document.

• Use Traceability Matrix to ensure no functions/


conditions is left untested.
Test Cases must be identifiable

• Name the test case id such that they are identified easily
while tracking defects or identifying a software
requirement at a later stage.
Implement Testing Techniques

• Boundary Value Analysis (BVA): As the name suggests


it's the technique that defines the testing of boundaries for
a specified range of values.

• Equivalence Partition (EP): This technique partitions


the range into equal parts/groups that tend to have the
same behavior.
Implement Testing Techniques

• State Transition Technique: This method is used when


software behavior changes from one state to another
following particular action.

• Error Guessing Technique: This is


guessing/anticipating the error that may arise while doing
manual testing. This is not a formal method and takes
advantages of a tester's experience with the application
Self-cleaning

• The test case you create must return the Test


Environment to the pre-test state and should not render
the test environment unusable. This is especially true for
configuration testing.
Repeatable and self-standing and Peer Review

• The test case should generate the same results every time
no matter who tests it

• After creating test cases, get them reviewed by your


colleagues. Your peers can uncover defects in your test
case design, which you may easily miss.
Types of test cases

• Functionality Test Cases

• User Interface Test Cases

• Performance Test Cases

• Integration Test Cases


Types of test cases

• Usability Test Cases

• Database Test Cases

• Security Test Cases

• User Acceptance Test Cases


Functionality Test Cases

• Functionality test cases are used to discover if an


application’s interface works with the rest of the system
and its users. The tests identify the success or failure of
functions that the software is expected to perform.
User Interface Test Cases

• User interface test cases are used to verify that specific


pieces of the Graphical User Interface (GUI) look and
work as expected.

• These types of test cases can be used to identify cosmetic


inconsistencies, grammar and spelling errors, links, and
any other elements the user interacts with or sees.
Performance Test Cases

• Performance test cases validate response times and


overall effectiveness of an application.

• After executing an action, how long does it take for the


system to respond? Performance test cases should have a
very clear set of success criteria.
Integration Test Cases

• Integration test cases are meant to determine how


different modules interact with each other.

• The main purpose with integration test cases are to ensure


interfaces between the different modules are working
properly.
Usability Test Cases

• Usability test cases can often be referred to as “tasks” or


“scenarios”. Rather than providing detailed step-by-step
instructions to execute the test, the tester is presented
with a high level scenario or task to complete.
Database Test Cases

• Test cases for database testing examine what’s happening


behind the scenes.

• Database tests are used to verify the developer has


written the code in a way that stores and handles data in a
consistent, safe manner
Security Test Cases

• Security test cases help ensure the application restricts


actions and permissions wherever necessary.

• These test cases are written to protect data when and


where it needs to be safeguarded.
User Acceptance Test Cases

• User acceptance test cases, or “UAT” test cases, help the


team test the user acceptance testing environment.

• These test cases should be broad, covering all areas of the


application.
Test case Advantages

• Test cases ensure good test coverage

• Help improve the quality of software,

• Decreases the maintenance and software support costs

• Help verify that the software meets the end user requirements

• Allows the tester to think thoroughly and approach the tests


from as many angles as possible

• Test cases are reusable for the future – anyone can reference
them and execute the test.
Test case template

• A test case template is a document containing an


organized list of test cases for different test scenarios that
check whether or not the software has the intended
functionality.

• It is well-designed document for developing and better


understanding of the test case data for a particular test
case scenario
Test case template fields

• Test case ID Test Priority

• Name of the Module Test Designed by

• Date of test designed Test Executed by

• Date of the Test Execution Name or Test Title

• Description of Test Pre-condition


Test case template fields

• Dependencies Test Steps

• Test Data Expected Results

• Post-Condition Actual Result

• Status (Fail/Pass) Notes


Test case template example

Test Case Test Case Summary Expected Results Remarks


ID Name
<unique id <short name to <brief summary of this test case> <brief explanation of what the <any additional
to identify identify the test expected results of this test case remarks>
the test case> should be>
case>
Test case template example
Test Case ID TC_Functionality_01
Description
Module
Prepared By Qatutorial.com Date
Prepar
ed
Reviewed / Updated Date
Review
ed
Tested By Qatutorial.com Date
Tested

Test Activities
Sl. No. Step Description Expected Actual Results
Results

Test Data Sets


Data Type Data Set 1 Data Data Set 3
Set 2

Test Case Result


That’s all for now…

You might also like