By 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.
1 SOFTWARE TESTING Przygotował: Marcin Lubawski. 2 Testing Process AnalyseDesignMaintainBuildTestInstal Software testing strategies Verification Validation.
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.
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
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.
 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.
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
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.
Software Development Software Testing. Testing Definitions There are many tests going under various names. The following is a general list to get a feel.
Testing Workflow In the Unified Process and Agile/Scrum processes.
Chapter SIX Implementation, Testing and Pragmatics Making it a reality.
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.
What is Testing? Testing is the process of exercising or evaluating a system or system component by manual or automated means to verify that it satisfies.
MANUAL TESTING KS SESSION PRESENTED BY 26/11/015 VISHAL KUMAR.
WHAT IS USER ACCEPTANCE TEST? HOW IT IS DIFFERENT FROM SYSTEM TESTING?.
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.
Testing and Evolution CSCI 201L Jeffrey Miller, Ph.D. HTTP :// WWW - SCF. USC. EDU /~ CSCI 201 USC CSCI 201L.
Asst.Prof.Dr. Wararat Songpan(Rungworawut)
Software Testing Kobla Setriakor Nyomi Faculty Intern (Programming II)
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
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
To the ETS – Accounts Setup and Preferences Online Training Course
Software Engineering (CSI 321)
TESTING TOOLS MANUAL APPROACH BY J.ADI SESHU.
Fundamentals of Information Systems, Sixth Edition
SOFTWARE TESTING OVERVIEW
Software Testing.
Software testing
ShareTheTraining TRR ARB Presentation Team 11
Different Types of Testing
Dynamic Web Page A dynamic web page is a kind of web page that has been prepared with fresh information (content and/or layout), for each individual viewing.
Software Quality Assurance
CHAPTER 2 Testing Throughout the Software Life Cycle
Roberta Roth, Alan Dennis, and Barbara Haley Wixom
Engineering Processes
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.
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
Software System Testing
To the ETS – Accounts Setup and Preferences Online Training Course
Test Cases, Test Suites and Test Case management systems
PSS0 Configuration Management,
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:

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 functional 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) Acceptance Testing (Black box) Regression Testing (Black box & White box) Non-Functional Testing Usability Testing Performance Testing/Load Testing Stress Testing Security Testing Compatibility Testing

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

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) Bug reporting & verification Step 6) Repeat testing & Regression testing (if required).

System Testing Document: Test Scenario & test cases. Test Scenario: This is a brief story about the flow/path 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 Design Test Scenario ID: TS_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 Popup Message “Welcome to UserName” Show Message “Welcome to UserName” Fail

Test Scenario & Test case Design (Combination) Test Scenario ID: TS_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

Example: Apartment System step1

Example: Apartment System step2 step3

Example: Apartment System step4

Test Scenario Design of Apartment System Test Scenario ID: TS_Connect Database (Style 1) Test ID Test Action &Test case Expected Results Pass/Fail Approval Connect_DB01 กดปุ่ม Connect Database แสดงหน้าค้นหาไฟล์ Connect Database Pass Ok กด browse Access database File แสดงหน้า window เพื่อค้นหาไฟล์ .mbd 3. open path C:\Program Files (x86)\Nanosoft Apartment.NET 5.9 Monthly Standard\Data\NanosoftApartment5.95.mdb Path อยู่ในช่อง access database file ชื่อ C:\Program Files (x86)\Nanosoft Apartment.NET 5.9 Monthly Standard\Data\NanosoftApartment5.95.mdb 4. กรอกข้อมูล 001 Admin password: 1234 วันที่ทำการ: 1/1/2559 Show Message Welcome to Nanosoft Apartment.NET 5.9 Monthly

Test Scenario Design of Apartment System Test Scenario ID: TS_Connect Database (Sytle 2) Test ID Test Action&Test case Expected Results Pass/Fail Approval Connect_DB01 กดปุ่ม Connect Database กด browse Access database File open path C:\Program Files (x86)\Nanosoft Apartment.NET 5.9 Monthly Standard\Data\NanosoftApartment5.95.mdb กรอกข้อมูล 001 Admin password: 1234 วันที่ทำการ: 1/1/2559 แสดงข้อความ Welcome to Nanosoft Apartment.NET 5.9 Monthly Pass Ok

Test Scenario Design of Apartment System Test Scenario ID: TS_Connect Database (Sytle 2) Test ID Test Action&Test case Expected Results Pass/Fail Approval Connect_DB02 กดปุ่ม Connect Database กด browse Access database File open path C:\Program Files (x86)\Nanosoft Apartment.NET 5.9 Monthly Standard\Data\NanosoftApartment5.95.mdb กรอกข้อมูล 001 Admin password: 12345 วันที่ทำการ: 1/1/2559 รหัสผ่านไม่ถูกต้องโปรดตรวจสอบ Pass Ok

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 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 Google Analytics Google Website Optimizer

Example of http://www.conceptfeedback.com

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 webpagetest http://www.wpexplorer.com/testing-wordpress-performance-speed/

Example of Performance/Load Testing tool

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

Example of Security Testing tool

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 http://browsershots.org/ Adobe Browser Lab Super Preview

Example of Compatibility Testing tool

Example of Compatibility Testing tool

User Acceptance Testing(UAT) 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. Acceptance Testing is “Black Box” tests. 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 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 developer, 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 at the end of user site by the end user. It is performed under uncontrolled environment. 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 Alpha Testing During Development Beta Testing Customer-end Site

Example: Beta Testing

Example: Beta Testing

Example: Beta Testing

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.