OBJECTIVE QUALITY ASSURANCE TESTS TESTING STRATEGIES

Slides:



Advertisements
Similar presentations
Object Oriented Analysis And Design-IT0207 iiI Semester
Advertisements

Software Testing. Quality is Hard to Pin Down Concise, clear definition is elusive Not easily quantifiable Many things to many people You'll know it when.
Lecture 8: Testing, Verification and Validation
Software Quality Assurance Plan
Testing HCI Usability Testing. Chronological order of testing Individual program units are built and tested (white-box testing / unit testing) Units are.
Testing an individual module
Software Testing. “Software and Cathedrals are much the same: First we build them, then we pray!!!” -Sam Redwine, Jr.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Software Process and Product Metrics
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Managing Software Quality
What is Software Engineering? the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software”
1 Software Testing (Part-II) Lecture Software Testing Software Testing is the process of finding the bugs in a software. It helps in Verifying and.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
TESTING.
Chapter 2 The process Process, Methods, and Tools
CLEANROOM SOFTWARE ENGINEERING.
ITEC224 Database Programming
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Software Testing Testing principles. Testing Testing involves operation of a system or application under controlled conditions & evaluating the results.
Unit-5 Designing Interface Objects Software Quality Assurance System Usability Measuring User Satisfaction.
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.
TESTING LEVELS Unit Testing Integration Testing System Testing Acceptance Testing.
Systems Development Life Cycle
Software Engineering 2004 Jyrki Nummenmaa 1 BACKGROUND There is no way to generally test programs exhaustively (that is, going through all execution.
LECTURE 20 26/11/15. Summary - Testing ◦ Testing affects all stages of software engineering cycle ◦ One strategy is a bottom-up approach – class, integration,
Chapter 1: Fundamental of Testing Systems Testing & Evaluation (MNN1063)
LECTURE 19 23/11/15 Software Quality and Testing.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Software Engineering Saeed Akhtar The University of Lahore.
Software Quality Assurance and Testing Fazal Rehman Shamil.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
SOFTWARE TESTING SOFTWARE TESTING Presented By, C.Jackulin Sugirtha-10mx15 R.Jeyaramar-10mx17K.Kanagalakshmi-10mx20J.A.Linda-10mx25P.B.Vahedha-10mx53.
1 Software Testing. 2 What is Software Testing ? Testing is a verification and validation activity that is performed by executing program code.
Lecture 7 After competition of this lecture students will have knowledge of the following: Design Interface Objects Micro Level Processes Macro Level.
Methodologies and Algorithms
Software Testing Strategies for building test group
Software Testing.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Software Project Configuration Management
Software Quality Control and Quality Assurance: Introduction
Regression Testing with its types
Software Engineering (CSI 321)
Software Testing Basics
Software Testing.
John D. McGregor Session 9 Testing Vocabulary
The Development Process of Web Applications
The Systems Engineering Context
Object oriented system development life cycle
Software Life Cycle Models
IS442 Information Systems Engineering
John D. McGregor Session 9 Testing Vocabulary
Introduction to Software Engineering
UNIT-4 BLACKBOX AND WHITEBOX TESTING
John D. McGregor Session 9 Testing Vocabulary
Strategies For Software Test Documentation
Introduction to Software Testing
Test Planning Mike O’Dell (some edits by Vassilis Athitsos)
Thursday’s Lecture Chemistry Building Musspratt Lecture Theatre,
Software life cycle models
Object-Oriented Systems Development Life Cycle (CH-3)
Unit-5 Designing Interface Objects Software Quality Assurance
Inspection and Review The main objective of an Inspection or a Review is to detect defects. (Not for Giving Alternative Solutions) This activity and procedure.
Chapter 10 – Software Testing
Baisc Of Software Testing
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
Chapter 17 Software Testing Strategies.
Testing, Inspection, Walkthrough
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Presentation transcript:

OBJECTIVE QUALITY ASSURANCE TESTS TESTING STRATEGIES IMPACT OF OBJECT ORIENTATION ON TESTING TEST CASES TEST PLAN CONTINUOUS TESTING MYER’S DEBUGGING PRINCIPLES

QUALITY ASSURANCE TESTS Why? Computers are infamous for doing what you tell them to do, not necessarily what you want them to do. Debugging: Is the process of finding out where something went wrong and correcting the code to eliminate the errors or bugs that cause unexpected results. Types of Errors: Language(syntax) errors Run – time errors Logic errors Categories: Error – based Testing Scenario(usage) – based Testing (contd…)

Categories (contd…) Error – based Testing. Scenario – based Testing. Search for particular clues of interest. Describe how clues should be tested. Scenario – based Testing. Concentrates on what the user does , not on what the product does. (contd…)

TESTING STRATEGIES Testing controlled by many factors risks involved limitations on resources deadlines BLACK BOX TESTING It is used to represent a system whose inside workings are not available for inspection. Black box is an imaginary box that hides its internal workings Test item is treated as “black”, since its logic is unknown; all that is known is what goes in & what comes out, or i/p & o/p Use: scenario based testing Eg. User manual

… WHITE BOX TESTING Specific logic is important and must be tested to guarantee the systems proper functioning. Use: error based testing Type : Path Testing-makes certain that each path in a object’s method is executed atleast once during testing 2 types 1. Statement testing coverage – test every statement in the object’s method by executing it atleast once 2. Branch testing coverage – to ensure that every branch alternative has been executed atleast once under some test

Detect serious design flaws early in the implementation TOP – DOWN TESTING Detect serious design flaws early in the implementation It supports testing user interface and system integration. BOTTOM – UP TESTING It starts with the details of the system and proceeds to higher levels by a progressive aggregation of details until they fit requirements of system. Leads to integration testing, which leads to system testing Unit-5, Software Quality & usablity, Dept of CSE, SKPEC, Tiruvannamalai. 5/5/2019

IMPACT OF OO ON TESTING Errors. Less Plausible ( not worth testing for ) More Plausible ( worth testing for now ) New errors might appear

… Impact of Inheritance on Testing. Reusability of tests. Unit-5, Software Quality & usablity, Dept of CSE, SKPEC, Tiruvannamalai. 5/5/2019

TEST CASES A test case is a set of What – if questions. To test a system you must construct some best input cases, that describe how the output will look. Next, perform the tests and compare the outcome with the expected output. (contd…)

… Testing Good test case Successful test case Myer’s (objective of testing ) Testing Is a process of executing a program with the intent of finding errors. Good test case That has a high probability of finding an as – yet – undiscovered error. Successful test case That detects an as – yet – undiscovered error. (Contd…)

… Guidelines (for developing Quality Assurance test cases) Describe the feature or service your test attempts to cover If based on use case, then refer its name. Specify the feature to test and how to test. Test the normal use. Test the abnormal but reasonable use. Test the abnormal and unreasonable use. Test the boundary conditions. While revising document the cases. Reusability and extendibility should be assessed. Add Questions that arise out of previous ones.

Test Plan A Test plan is developed to detect and identify potential problems before delivering the software to its users. A test plan offers a road map. A dreaded and frequently overlooked activity in software development. Steps for creating test plan: Objectives of the test. Development of a test case Test analysis. Regression Testing. Beta Testing. Alpha Testing. (contd…)

… Guidelines (for preparing test plan) Specify Requirements generated by user. Specify Schedule and resources. Determine the testing strategy. Configuration Control System. Keep the plan up to date. At the end of each milestone, fill routine updates.

CONTINUOUS TESTING Testing must take place on continuous basis and this refining cycle must continue throughout the development process until you are satisfied with the results. During this iterative process, prototypes will be transformed incrementally into the actual application.

MYER’S DEBUGGING PRINCIPLES Bug locating principles. Think If you reach an impasse (deadlock), sleep on it. If the impasse remains, describe the problem to someone else. Use debugging tools. Experimentation should be done as a last resort. Debugging principles. Where there is one bug , there is likely to be another. Fix the error, not just the symptom. The probability of solution being correct drops down as the size increases. Beware of error correction, it may create new errors.

Case Study Unit-5, Software Quality & usablity, Dept of CSE, SKPEC, Tiruvannamalai. 5/5/2019

System Usability- Introduction The task of satisfying user requirements is basic motivation of quality Usability testing is different from quality assurance testing in that, rather finding programming defects. It reflects the users need and satisfaction

USABILITY TESTING Definition: ISO Defines the usability as the effectiveness, efficiency and satisfaction with which a specified set of users to can achieve a specified set of tasks.

USABILITY TESTING ISO Definition requires Defining tasks – What are the tasks Defining users – who are the users A means for measuring effectiveness, efficiency and satisfaction – how do we measure usability

USABILITY TESTING Usability measures the ease of use as well as the degree of comfort and satisfaction users have with the software. Usability is one of the most crucial factor so it should begin in the earlier stage of product development.

USABILITY TESTING Usability test cases begin with the identification of use cases. When designing test focus on use cases and tasks not features.

Jacobson’s Life cycle model USABILITY TESTING OOA- Use case model Quality assurance test cases User satisfaction Test cases Usability test cases Test plan Jacobson’s Life cycle model

Guidelines for Usability testing The usability testing should involve all software components Usability need not be more expensive or elaborate All tests need not involve many subjects Consider user’s experience as a part of your software usability Apply usability testing early and often.

RECORDING THE USABILITY TEST When conducting a usability test provide a comfortable environment. Record the test results using a video camera or a tape recorder. If possible involve all design team members in observing the test and reviewing the results.

USER SATISFACTION TEST User satisfaction testing is the process of quantifying the usability test with some measurable attributes of the test such as functionality, cost, or ease of use.

PRINCIPLE OBJECTIVES To act as a communication vehicle between users and designers. To detect and evaluate changes during the design process. To provide a periodic indication of divergence of opinion about the current design.

PRINCIPLE OBJECTIVES (cont…) To enable pinpointing specific areas of dissatisfaction for remedy. To provide a clear understanding of just how the completed design is to be evaluated.

GUIDELINES FOR DEVELOPING USER SATISFACTI0N TEST The format of every user satisfaction test is basically the same, but its content is different for each project.

A Custom Form For User Satisfaction Test How do you rate the customer tracking project at this time? 10 9 8 7 6 5 4 3 2 1 Ease of use Very Easy Very Hard 10 9 8 7 6 5 4 3 2 1 Non Functional Very Functional Functionality 10 9 8 7 6 5 4 3 2 1 Very Expensive Cost Very Inexpensive 10 9 8 7 6 5 4 3 2 1 Intuitive UI Very Intuitive Very Hard to Follow 10 9 8 7 6 5 4 3 2 1 Reliability Very Reliable Not Reliable Comments I have more to say; I would like to see you