Testing - an Overview September 10, 2008 1. What is it, Why do it? Testing is a set of activities aimed at validating that an attribute or capability.

Slides:



Advertisements
Similar presentations
Testing Relational Database
Advertisements

Test process essentials Riitta Viitamäki,
Configuration Management
System Testing 2  Effective March 3, 2014, new requirements for system testing were implemented  State Agencies are now required to provide to FNS:
MODELING THE TESTING PROCESS Formal Testing (1.0) Requirements Software Design Risk Data Approved, Debugged, Eng. Tested Code Automated Test Tools Tested.
Software Quality Assurance Plan
Software Testing By Marcin Starzomski :P. What is Testing ? Testing is a process used to help identify the correctness, completeness and quality of developed.
DESIGNING A PUBLIC KEY INFRASTRUCTURE
Documentation Testing
COMP8130 and 4130Adrian Marshall 8130 and 4130 Test Execution and Reporting Adrian Marshall.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 12: Managing and Implementing Backups and Disaster Recovery.
DITSCAP Phase 2 - Verification Pramod Jampala Christopher Swenson.
 QUALITY ASSURANCE:  QA is defined as a procedure or set of procedures intended to ensure that a product or service under development (before work is.
CSE Senior Design II Test Planning Mike O’Dell Based on an earlier presentation by Mike O’Dell, UTA.
Software Testing Prasad G.
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
Chapter 11: Testing The dynamic verification of the behavior of a program on a finite set of test cases, suitable selected from the usually infinite execution.
Introduction to Software Testing
Issues on Software Testing for Safety-Critical Real-Time Automation Systems Shahdat Hossain Troy Mockenhaupt.
Project Execution & Termination Life Cycle Execution Presented by: Basker George.
Maintaining Windows Server 2008 File Services
Introduction to Computer Technology
Functional Testing Test cases derived from requirements specification document – Black box testing – Independent testers – Test both valid and invalid.
Release & Deployment ITIL Version 3
Commercial Database Applications Testing. Test Plan Testing Strategy Testing Planning Testing Design (covered in other modules) Unit Testing (covered.
CCSB223/SAD/CHAPTER141 Chapter 14 Implementing and Maintaining the System.
Software Testing Lifecycle Practice
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.
Dr Andy Brooks1 FOR0383 Software Quality Assurance Lecture 1 Introduction Forkröfur/prerequisite: FOR0283 Programming II Website:
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
INFO 637Lecture #81 Software Engineering Process II Integration and System Testing INFO 637 Glenn Booker.
SOFTWARE TESTING STRATEGIES CIS518001VA : ADVANCED SOFTWARE ENGINEERING TERM PAPER.
© 2012 IBM Corporation Rational Insight | Back to Basis Series Chao Zhang Unit Testing.
Software Testing Life Cycle
Software Systems Verification and Validation Laboratory Assignment 3 Integration, System, Regression, Acceptance Testing Assignment date: Lab 3 Delivery.
RUP Implementation and Testing
Software Inspection A basic tool for defect removal A basic tool for defect removal Urgent need for QA and removal can be supported by inspection Urgent.
Software testing basic. Main contents  Why is testing necessary?  What is testing?  Test Design techniques  Test level  Test type  How to write.
FCS - AAO - DM COMPE/SE/ISE 492 Senior Project 2 System/Software Test Documentation (STD) System/Software Test Documentation (STD)
End HomeWelcome! The Software Development Process.
Testing Workflow In the Unified Process and Agile/Scrum processes.
Chapter 9 Testing the System Shari L. Pfleeger Joann M. Atlee
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
QUALITY ASSURANCE PRACTICES. Quality Plan Prepared and approved at the beginning of project Soft filing system approach followed. Filing location – –
September Interface Kickoff Sunflower Project Statewide Management and Reporting Tool Update September 02, 2009.
Chapter 8 Lecture 1 Software Testing. Program testing Testing is intended to show that a program does what it is intended to do and to discover program.
Software Testing Process By: M. Muzaffar Hameed.
MANUAL TESTING KS SESSION PRESENTED BY 26/11/015 VISHAL KUMAR.
Chapter 8 Testing. Principles of Object-Oriented Testing Å Object-oriented systems are built out of two or more interrelated objects Å Determining the.
CSC 480 Software Engineering Test Planning. Test Cases and Test Plans A test case is an explicit set of instructions designed to detect a particular class.
Integration and system test
What is a level of test?  Defined by a given Environment  Environment is a collection of people, hard ware, software, interfaces, data etc.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
1 Phase Testing. Janice Regan, For each group of units Overview of Implementation phase Create Class Skeletons Define Implementation Plan (+ determine.
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
What is a software? Computer Software, or just Software, is the collection of computer programs and related data that provide the instructions telling.
Testing throughout Lifecycle Ljudmilla Karu. Verification and validation (V&V) Verification is defined as the process of evaluating a system or component.
Software Testing.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Testing the System.
Regression Testing with its types
SOFTWARE TESTING OVERVIEW
SEVERITY & PRIORITY RELATIONSHIP
Manfred Huber Based on an earlier presentation by Mike O’Dell, UTA
Introduction to Software Testing
Test Planning Mike O’Dell (some edits by Vassilis Athitsos)
Chapter 10 – Software Testing
Software Testing Lifecycle Practice
Software Reviews.
Presentation transcript:

Testing - an Overview September 10,

What is it, Why do it? Testing is a set of activities aimed at validating that an attribute or capability of a program or system is able to meet its documented requirements Testing is done to detect failures so that defects may be uncovered and corrected 2

Common Types of Tests Type of Test DescriptionApplicable when… Unit Each unit (basic component) of the software is tested to verify that the detailed design for the unit has been correctly implemented a module or piece of functionality has been developed Integration Exposes defects in the interfaces and interaction between integrated components (modules) during and after the development of a new module System Tests a completely integrated system to verify that it meets its requirementsthe system development nears completion (project or phase) System Integration Verifies that a system is integrated to other systems defined in the system requirementsthe system is integrated with other systems or data sources Usability Verifies that the user interface is easy to use and understanduser interfaces are being developed Security Testing which confirms that the program can restrict access to authorized personnel and that the authorized personnel can access the functions available to their security level user roles are defined and being developed in the system Acceptance Can be conducted by the end-user, customer, or client to validate whether or not to accept the product. Acceptance testing may be performed as part of the hand-off process between any two phases of development development is done and the system testing has been successfully completed Regression After modifying software, either for a change in functionality or to fix defects, a regression test re-runs previously passing tests on the modified software to ensure that the modifications haven't unintentionally caused a regression of previous functionality modifications are made to an existing system Load / Stress / Performance Assures that the system performs with expected high volumes Requires the simulation of multiple users accessing the program’s services concurrently (relevant for multi-user systems) or large amounts of data high volumes (number of users / amount of data) are expected Parallel Old systems and new system are run in parallel and the results compared to detect unplanned differences a new system is replacing an old one with same functionality Recovery Assures that the system can be returned to an operational status after a failureevents that may affect an operational system need to be tested 3

Sample Testing Cycle Requirements analysis: Testing should begin in the requirements phase of the life cycle. During the design phase, testers work with developers in determining what aspects of a design are testable and with what parameters those test work Test Planning: Test strategy, test plan, test environment (testbed) creation. A lot of activities will be carried out during testing so a plan needs to be developed Test Development: Test procedures, test scenarios, test cases, test scripts to use during testing Test Execution: Testers execute the software based on the plans and tests and report any errors to the development team Test Results Analysis or Defect Analysis: Is done by the development team and may include the client to decide what defects should be treated, fixed, rejected or deferred Retesting the resolved defects: Once a defect has been dealt with by the development team, it is retested by the testing team Regression Testing: Retesting a previously tested program following modification to ensure that faults have not been introduced or uncovered as a result of the changes made Test Reporting: Once testing is completed, final reports on testing results are reviewed to determine whether or not the software tested is ready for release 4

Requirements Encryption Requirements Provides Full Disk Encryption (FDE) C Encryption and decryption of data can be configurable to be transparent to user (i.e. on the fly) or requires user intervention C Products will use only FIPS compliant algorithms for encryption, hashing, and signing C Can encrypt data on removable storage media/devices (hardware agnostic) D Ability to extract data from an encrypted source to an unencrytped destination C Allows encryption algorithm selection by an domain administrator D Provides FDE and EFS under a single product management console I Product uses an approved random number generator specified in FIPS Annex C for key generation I Product has a negligible effect on user productivity (boot up, file load and power down) C C = Critical D = Desired I = Important 5

Test Case Sample TEST CASE # (from requirements document) # 7 Provides Full Disk Encryption (FDE) SCENARIOThe contents on a supposedly encrypted hard drive will be examined using computer forensic software before and after encryption. Testing that will take place. A)Examine the laptop hard drive prior to encryption to confirm forensic software can read the contents. B)Encrypt the hard drive using the vendor’s software C)Examine the laptop hard drive after encryption and confirm forensic software cannot read the contents. D)Boot the laptop with the encrypted hard drive to confirm it is functional. ACCEPTANCE CRITERIA:Should the software not be able to read the contents of the drive and yet the laptop still function normally, the assumption is that the drive is encrypted using the vendor defined algorithm. SETUP Data – Identify any data that needs to be set up for this test. No data but workstation must be loaded with computer forensic software. Transactional Steps No.STEPSEXPECTED RESULTSTESTER INITIAL PASS/ FAIL ACTUAL RESULTS 1Examine hard drive with computer forensic software prior to encryption. The software will recognize all of the files on the hard drive and be able to display the file contents. DMSPass 2Examine hard drive with computer forensic software after encryption. The software will not recognize any file on the hard drive and hard drive data will appear to be random data. DMSPass. The forensic software considered all of the drive to be slack space. 3Perform regular boot of laptop with hard disk encrypted. Laptop will boot and load operating system from encrypted hard drive. DMSPass 6

Test Plan Document Overview: Overview of the focus of this testing Test Cases: List all the test cases that will be performed, their purpose and function, and who will be responsible for performing them Test Data: Indicate where the test data is coming from and who is responsible for providing it. How will it be created and accuracy ensured? Acceptance Criteria: Define the testing approval process. Identify the specific criteria that will be involved for acceptance of each test. Include severity definitions, pass/fail definitions Resolution Log: Describe the procedure for tracking problems. What are the items that will be included in the log? Special Test Issues: Describe any special or unique testing issues that should be considered in this system implementation Testing Schedule: Define the specific schedule for performing the testing. When will each test case be performed, and what are its prerequisites and dependencies? Environment: Identify the environment the test activities will occur in Test Results: Indicate how test results will be reported, documented or summarized 7