Software Testing 101 - Vector · PDF file Software Testing 101. 2 1. Software Quality 2....

Click here to load reader

  • date post

    24-Jun-2020
  • Category

    Documents

  • view

    16
  • download

    0

Embed Size (px)

Transcript of Software Testing 101 - Vector · PDF file Software Testing 101. 2 1. Software Quality 2....

  • V0.1 | 2018-10-30

    Jeffrey Fortin – Product Manager VectorCAST

    Software Testing 101

  • 2

    1. Software Quality

    2. Software Testing Levels

    3. Questions and Answers

    Agenda

  • 3

    Definition of Software Quality

    Software Quality

    1. ISO-24765:2010

    Capability of a software product to satisfy stated and implied

    needs when used under specified conditions (1)

  • 4

    Impact of Poor Software Quality

    Software Quality

    1. https://www.nist.gov/sites/default/files/documents/director/planning/report02-3.pdf

  • 5

    Balancing Risks and Rewards

    Software Quality

    Costs to Improve Quality

    Benefits of Higher Quality

  • 6

    Improving Process Efficiency

    Software Quality

    Action over Intent

    Continuous Improvement

    Establish a Culture of Quality

  • 7

    1. Software Quality

    2. Software Testing Levels

    3. Questions and Answers

    Agenda

  • 8

    Current Testing Level Practices

    Software Testing Levels

    https://barrgroup.com/embedded-systems/survey/2018

  • 9

    Software Testing Levels

    Software Testing Levels

    Unit Testing

    Integration Testing

    System Testing

  • 10

    Unit Testing

    Software Testing Levels

    Call the function

    Check the return value

    Unit Testing

    Integration Testing

    System Testing

  • 11

    Unit Test Case

    Software Testing Levels

    Unit Testing

    Integration Testing

    System Testing

  • 12

    Unit Testing Features

    Software Testing Levels

    Stubs or Mock Functions

    • Test the code in isolation

    • Create test conditions that may be hard to do otherwise

    Global Data

    • Initialized before the call

    • Checked after the call

    Many Test Types

    • Boundary conditions

    • “magic” numbers

    Unit Testing

    Integration Testing

    System Testing

  • 13

    Unit Testing Benefits

    Software Testing Levels

    Small and Quick to Run

    •Should be easy to re-run for each code change

    Positive Side Effects

    •Code is more modular

    •Easier to reuse

    Reduces Global Data

    •You will tend to use global data less

    •You are more likely to create access methods rather than directly access global data

    Reduces overall effort

    •Defects diagnosed at a fine grain level

    •Debugging is limited to scope of the code changes

    Unit Testing

    Integration Testing

    System Testing

  • 14

    Integration Testing at the Unit Level

    Software Testing Levels

    Replace some or all stubs with real code

    • Dependent units are linked into harness

    Used to validate the stubs

    • If tests fail, go back and update

    • Some tests might only be possible in this configuration

    Unit Testing

    Integration Testing

    System Testing

  • 15

    System Testing

    Software Testing Levels

     Testing at the application level

     Fully linked application

     Testing interface is the application interface

     May need to create test drivers

    Unit Testing

    Integration Testing

    System Testing

  • 16

    Integration Testing at the System Level

    Software Testing Levels

    Subsystem Testing

    •Test Part of the application

    •May be helpful to test a subsystem in isolation

    •Can help with future reuse

    •Validate design constraints (coupling)

    Unit Testing

    Integration Testing

    System Testing

  • 17

    Software Testing Strategy

    Software Testing Levels

    Software Testing

    Lifecycle Plan

    Identify Metrics

    Generate Quality Reports

    Take Action

    Improve the

    Process

  • 18

    VectorCAST Testing Automation Platform

    Software Testing Levels

  • 19

    1. Software Quality

    2. Software Testing Levels

    3. Questions and Answers

    Agenda

  • 20

    Software Testing 101

    Questions and Answers

    ! ?

  • 21 © 2018. Vector Informatik GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V0.1 | 2018-10-30

    Author: Jeffrey Fortin Vector

    More Information! Visit our Website for: > News > Products > Demo Software > Support > Workshops > Contact Addresses

    www.vector.com

    http://www.vector.com/