SE 754NT - PowerPoint PPT Presentation

1 / 26
About This Presentation
Title:

SE 754NT

Description:

Test all modified code. Compatibility tests. Performed with each new version of infrastructure ... Compatibility tests should be run to determine if ... – PowerPoint PPT presentation

Number of Views:75
Avg rating:3.0/5.0
Slides: 27
Provided by: Anne301
Category:

less

Transcript and Presenter's Notes

Title: SE 754NT


1
SE 754-NT Object-Oriented Testing and
Reliability Robert Oshana Lecture
23 For more information, please
contact NTU Tape Orders NTU Media
Services (970) 495-6455
oshana_at_airmail.net
tapeorders_at_ntu.edu
2
Where we are
  • Introduction
  • The testing perspective
  • Planning for testing
  • Testing analysis and design models
  • Class testing basics
  • Testing interactions
  • Testing class hierarchies
  • Testing distributed objects
  • Testing systems
  • Components, frameworks, product lines

3
Testing Distributed Objects (tests for the
generic distribution model)
  • Chapter 8

4
Language dependence issues
  • Specific tests should be designed where two
    components written in different languages
    interface even through the infrastructure
  • Inspectors should verify that correct mappings
    are used through guided inspection
  • Return objects handled correctly

5
Platform independence issues
  • All of the models of distribution are independent
    of the platform on which they run
  • Deployment environment still makes a difference
  • Available memory
  • Processor speed
  • Deployment tests with product release

6
Infrastructure tests
  • Infrastructure delivered from a vendor is
    trusted code
  • No detailed testing
  • Default implementations of stubs and skeletons
    may be edited
  • No longer trusted and must be tested
  • Test all modified code

7
Compatibility tests
  • Performed with each new version of infrastructure
  • Compatibility tests should be run to determine if
    application has to be modified
  • Also done for new versions of frameworks and tools

8
Testing the recovery of failures
  • Big difference in distributed systems is partial
    failure due to one of the machines failing
  • Build a test infrastructure using a main machine
    for locator and server
  • Test driver for application to contact
    non-existent server
  • Must be able to handle successfully

9
Dynamic modification of infrastructure
  • CORBA infrastructure can be modified during
    execution
  • These modifications can change the configuration
    of the system
  • Timing changes
  • Execution path
  • Must construct tests for these configurations

10
Different sequences of events
  • Asynchronous messages between processes cause
    events to occur in a variety of sequences
  • Try to test as many possible combinations as
    possible
  • Statistical sampling techniques can be used

11
Requested object unavailable
  • Many systems provide ability for users to enter
    names of providers and resources
  • Test objective is to determine whether the
    exception is caught in an appropriate location in
    the requestor
  • Will operation abort gracefully

12
Test case summary
  • Use the test suite giving the following coverages
  • Every method of each standard I/F
  • Every SYN-path
  • Every logical control path
  • Apply test suite repeatedly using following
    variations
  • Load of applications using same systems
  • Load of user input into overall system
  • Connections between machines
  • Configurations of the infrastructure

13
The internet
  • Very large and dynamic distributed system
  • Web pages include data and behavior
  • Testing a web page
  • testing that the intended display is presented to
    the user
  • Input accepted and forwarded correctly
  • All actions perform as intended

14
The internet
  • Display failures
  • Incorrect fonts displayed
  • Mismatch of coordinates (figure not visible)
  • Wrong language used
  • Mismatch between platform configuration and
    browser attributes

15
The internet
  • Script testing
  • Incorrect/insufficient permissions to execute
    code
  • Inability to create a file when needed
  • Computing the wrong answer
  • Inability to locate resources
  • Very difficult to tests for all combinations
    (focus on uses that make sense)

16
Web servers
  • Servers are generic vendor applications (trusted)
  • Designed to be modular
  • Testing these systems
  • Do scripts do what is intended?
  • Is the current data correct and in the form
    expected by the application?

17
Web server architecture
18
Life cycle testing of internet applications
  • Testing across a set of user transactions
  • Selected to utilize a complete set of backend
    applications
  • Life cycle perspective
  • Users system
  • Web site
  • Supplier applications

19
Life cycle testing of internet applications
  • 1. Presentation to the user
  • 2. Acceptance of input (customer order)
  • 3. Modification of input (order)
  • Significant interaction testing in two dimensions
  • Stress test the web site

20
Summary
  • One of the principle differences between
    distributed and nondistributed systems is the
    importance of timing
  • Temporal logic can be used as a means of being
    expressive
  • Instrumentation to allow the investigation of the
    effects of various sequences

21
Testing systems
  • Chapter 9

22
Where we are
  • Introduction
  • The testing perspective
  • Planning for testing
  • Testing analysis and design models
  • Class testing basics
  • Testing interactions
  • Testing class hierarchies
  • Testing distributed objects
  • Testing systems
  • Components, frameworks, product lines

23
Introduction
  • System testing can be classified as the testing
    of a completed application to determine that it
    provides all of the behaviors required for the
    application
  • Change from searching for defects that cause
    program failures to search for variances between
    operation and system requirements

24
Defining the system test plan
  • A more formal and comprehensive document
  • Features tested and not tested
  • Some validation at each increment
  • Test suspension criteria and resumption
    requirements
  • System testers are not developers or debuggers

25
Strategies for selecting test cases use profile
  • Traditional approach is based on operational
    profiles
  • A use profile is an accurate estimate of the
    operational profile
  • Priority rather than the frequency
  • Consider criticality as well as frequency

26
SE 754-NT Object-Oriented Testing and
Reliability Robert Oshana End of
lecture For more information, please
contact NTU Tape Orders NTU Media
Services (970) 495-6455
oshana_at_airmail.net
tapeorders_at_ntu.edu
Write a Comment
User Comments (0)
About PowerShow.com