Asst.Prof.Dr. Wararat Songpan(Rungworawut)

Slides:



Advertisements
Similar presentations
SOFTWARE TESTING. Software Testing Principles Types of software tests Test planning Test Development Test Execution and Reporting Test tools and Methods.
Advertisements

Ch-11 Project Execution and Termination. System Testing This involves two different phases with two different outputs First phase is system test planning.
System Integration Verification and Validation
Testing and Quality Assurance
1 SOFTWARE TESTING Przygotował: Marcin Lubawski. 2 Testing Process AnalyseDesignMaintainBuildTestInstal Software testing strategies Verification Validation.
Software Testing 3 Damian Gordon.
Abirami Poonkundran 2/22/10.  Goal  Introduction  Testing Methods  Testing Scope  My Focus  Current Progress  Explanation of Tools  Things to.
CMSC 345, Version 11/07 SD Vick from S. Mitchell Software Testing.
Documentation Testing
Chapter 9 Testing the System, part 2. Testing  Unit testing White (glass) box Code walkthroughs and inspections  Integration testing Bottom-up Top-down.
Illinois Institute of Technology
Software Testing Prasad G.
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.
Senior Design – Acceptance Test Plan Review The goal is to: define the criteria for approving the application. Tightly coupled to the Requirements document.
Introduction to Software Testing
 What is Software Testing  Terminologies used in Software testing  Types of Testing  What is Manual Testing  Types of Manual Testing  Process that.
BY RAJESWARI S SOFTWARE TESTING. INTRODUCTION Software testing is the process of testing the software product. Effective software testing will contribute.
Functional Testing Test cases derived from requirements specification document – Black box testing – Independent testers – Test both valid and invalid.
BY: GARIMA GUPTA MCA FINAL YEAR WHAT IS SOFTWARE TESTING ? SOFTWARE TESTING IS THE PROCESS OF EXECUTING PROGRAMS OR SYSTEM WITH THE INTENT.
Extreme Programming Software Development Written by Sanjay Kumar.
Software testing.
Software Quality Assurance Lecture #8 By: Faraz Ahmed.
Categories of Testing.
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.
© 2012 IBM Corporation Rational Insight | Back to Basis Series Chao Zhang Unit Testing.
Software Testing Life Cycle
CPIS 357 Software Quality & Testing
Software Systems Verification and Validation Laboratory Assignment 3 Integration, System, Regression, Acceptance Testing Assignment date: Lab 3 Delivery.
Introduction Telerik Software Academy Software Quality Assurance.
Software Testing Testing principles. Testing Testing involves operation of a system or application under controlled conditions & evaluating the results.
FCS - AAO - DM COMPE/SE/ISE 492 Senior Project 2 System/Software Test Documentation (STD) System/Software Test Documentation (STD)
 CS 5380 Software Engineering Chapter 8 Testing.
Testing Workflow In the Unified Process and Agile/Scrum processes.
University of Palestine software engineering department Testing of Software Systems Testing throughout the software life cycle instructor: Tasneem.
TESTING LEVELS Unit Testing Integration Testing System Testing Acceptance Testing.
Software Testing Process By: M. Muzaffar Hameed.
MANUAL TESTING KS SESSION PRESENTED BY 26/11/015 VISHAL KUMAR.
July, 2008 Impati – Software Test Solutions. July, Contents Testing Service Overview and Approach Test Services and Industries Key Services Offering.
WHAT IS USER ACCEPTANCE TEST? HOW IT IS DIFFERENT FROM SYSTEM TESTING?.
What is a level of test?  Defined by a given Environment  Environment is a collection of people, hard ware, software, interfaces, data etc.
Performance Testing Test Complete. Performance testing and its sub categories Performance testing is performed, to determine how fast some aspect of a.
Teaching slides Chapter 9. Chapter 9 Software Testing (Verification & Validation) Introduction Software testing & software engineering methodologies Introduction.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
Virtual Machines Module 2. Objectives Define virtual machine Define common terminology Identify advantages and disadvantages Determine what software is.
QC – User Interface QUALITY CENTER. QC – Testing Process QC testing process includes four phases: Specifying Requirements Specifying Requirements Planning.
Testing and Evolution CSCI 201L Jeffrey Miller, Ph.D. HTTP :// WWW - SCF. USC. EDU /~ CSCI 201 USC CSCI 201L.
Software Testing By Souvik Roy. What is Software Testing? Executing software in a simulated or real environment, using inputs selected somehow.
Syndicate Members: 1. GC Muhammad Uzair 2. GC Umer Naveed Malik.
Software Testing Strategies for building test group
Software Testing.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
By Asst.Prof.Dr. Wararat Songpan(Rungworawut)
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
Software Engineering (CSI 321)
TESTING TOOLS MANUAL APPROACH BY J.ADI SESHU.
Fundamentals of Information Systems, Sixth Edition
SOFTWARE TESTING OVERVIEW
Software Testing.
Different Types of Testing
CHAPTER 2 Testing Throughout the Software Life Cycle
Roberta Roth, Alan Dennis, and Barbara Haley Wixom
Introduction to Software Testing
Lecture 09:Software Testing
Static Testing Static testing refers to testing that takes place without Execution - examining and reviewing it. Dynamic Testing Dynamic testing is what.
Software System Testing
Test Cases, Test Suites and Test Case management systems
Software Testing Strategies
Types of Software Testing Course. CONTENT  Black-box testing course  White-box software testing course  Automated software testing course  Regression.
Presentation transcript:

Asst.Prof.Dr. Wararat Songpan(Rungworawut) Chapter 8&9 System Testing and User Acceptance Testing 322235 Software Testing By Asst.Prof.Dr. Wararat Songpan(Rungworawut) Department of Computer Science, Faculty of Science, Khon Kaen University

Requirements Specification System Testing User Acceptance Testing Requirements Specification System Testing Preliminary Design Integration Testing Detailed Coding Unit Testing Coding

System Testing The behavior of whole system/product is tested as defined by the scope of the development project or product. System testing is most often the final test to verify that the system to be delivered meets the specification and its purpose. System testing is carried out by specialists testers or independent testers. System testing should investigate both function and non-functional requirement of the testing.

Type of System Testing Functional Testing Non-Functional Testing Unit Testing (Black box & White box) Integration Testing (Black box & White box) System Testing (Black box) User Acceptance Testing (Black box) Regression Testing (Black box) Non-Functional Testing Usability Testing Performance/Load Testing Stress Testing Recovery Testing Security Testing Compatibility Testing

Entry Criteria for System Testing Testing environment is available for testing (Similar to staging environment) The specification document software development is completed. Integration of modules should be fully integrated. Unit Testing should be finished.

How to do System Testing Step 1) First & important step is preparation of system Test plan Step 2) Second step is to creation Test Scenario & test cases. Step 3) Creation of test data which used for System testing. Step 4) Manual/Automated test case execution. Step 5) Execution of test cases. Step 6) Bug reporting, Bug verification (Summary Report)

System Testing Document: Test Scenario & test cases. Test Scenario: This is a brief story about the flow followed by the system/application under test to achieve a business process flows that is a document describe the input, Action/Event and expected response to determine whether the particular functionality of the application is working fine.

Example of Test Scenario 1. Input UserName and Password 2. Click Log In 3. Show message “Welcome to UserName”

Test Scenario Document Test Scenario ID: TS001_Login Step Test Action Expected Results Pass/Fail Approval 1 Input User and Password User and Password is not more than 6 characters Pass Ok 2 Click Log In Log In Button is ok 3 Show Message “Welcome to UserName” Show Message Fail

Test Scenario & Test case Documents (Combination) Test Scenario ID: TS001_Login Test ID Test Action&Test case Expected Results Pass/Fail Approval Login01 Input User: wararat Input Password: comsci Click Log In Show Message Welcome to wararat Pass Ok Login02 Input User: Login page is not display Login03 Input User: wararat Input Password: 2. Click Log In Login04 Input User: wararat2 Input Password: wararat

Requirement Validation Matrix TC 001 TC 002 TC 003 TC 004 TC 005 TC 006 TC 007 Req_01 Req_02 Req_03 Req_04

Traceability Requirement to System Testing Requirement of Hotel Reservation System 1. Login 2. Reserve Booking 3. Manage Booking 4. Payment Requirement No. Requirement Description Test Scenario ID Test Case ID Status Req_01 Login TS001 TC001, TC002, TC003, TC004 Fail Req_02 Reserve Booking TS002 TC005 Pass Req_03 Manage Booking TS003 TC006 Req_04 Payment TS004 TC007

Example: Requirement Validation Matrix Tool (CASE Tool) Ref: http://www.lifeheed.com/article.php?article=72

Non-Functional Testing Usability Testing Performance/Load Testing Stress Testing Recovery Testing Security Testing Compatibility Testing

Usability Testing Usability means the software s capability to be learned and understood easily and how attractive it looks to the end user. Testing tools http://www.conceptfeedback.com Click Heat Google Analytics Google Website Optimizer

Performance Testing/Load Testing Performance Testing is done to determine the software characteristics like response time, throughput or MIPS (Millions of instruction per second) / virtual users at which the system/software operates. Testing Tools Microsoft Visual Studio 2008 and above Load2Test Site Blaster Pilot Testinganywhere Neoload

Stress Testing Testing of software/hardware for its effectiveness in giving consistent or satisfactory performance under extreme and unfavorable conditions such as heavy network traffic, heavy processes load, under or over clocking of underlying hardware, working under maximum requests for resource utilization of the peripheral or in the system. Testing Tools Microsoft Visual Studio 2008 and above. Load2Test Site Blaster Pilot

Security Testing Security is all about finding out all the potential loopholes and weakness of the system, which might result into loss/theft of highly sensitive information or destruction of the system by an intruder/outsider. Testing tools Web Scarab Wire Shark

Compatibility Testing Compatibility Testing is a type of testing used to ensure compatibility of the system built with various other objects such as other web browsers, hardware platforms, user and operating system. Testing Tools Adobe Browser Lab Browser Shots Super Preview

User Acceptance Testing Requirements Specification System Testing Preliminary Design Integration Testing Detailed Coding Unit Testing Coding

User Acceptance Testing (UAT) User Acceptance Testing (UAT) is the software testing process where system tested for acceptability & validates the end to end business flow. Such type of testing executed by client in separate environment (Similar to production environment) & confirm whether system meets the requirements as per requirement specification or not. User Acceptance Testing is “Black Box” testing because UAT does not aware of internal structure of the code.

(Operating in Production) Environment Setup Same input System (Operating in Production) New System (As a run test) Output Output Match No Yes Defect analysis Installation

Type of User Acceptance Testing As the software application may use different users on different way. End user will use and how customer actually use the software application. Most of software venders are use the term: Alpha testing Beta Testing

Alpha Testing Alpha Testing is conducted by customer at the developer’s site. It is performed by potential users like end users or organization users before it is release to external customer & report the defect found while Alpha Testing.

Beta Testing The beta testing is to be carried out without any help of developers by the end user at end user’s site. This testing is conducted by limited users & all issues found during this testing are reported on continuous basis which help to improve the system. The is last stage of the testing where product is sent outside the company of for trial offer to download.

How difference Alpha & Beta Testing Developer’s Site Alpha Testing End User’s Site Beta Testing

Example: Beta Testing (Commercial Products)

Example: Beta Testing (Commercial Products)

Example: Beta Testing (Commercial Products)

Requirements Specification Regression Testing User Acceptance Testing Requirements Specification System Testing Regression Testing Preliminary Design Integration Testing Detailed Coding Unit Testing Coding

Regression Testing Regression Testing is one of the most importance type of software testing, in which it checks whether a small change in any component of the application does not affect the unchanged component. Testing Tools. Winrunner Quick Test Pro Regression Tester Selenium