Objectives  Testing Concepts for WebApps  Testing Process  Content Testing  User Interface Testing  Component-level testing  Navigation Testing.

Slides:



Advertisements
Similar presentations
WEB DESIGN TABLES, PAGE LAYOUT AND FORMS. Page Layout Page Layout is an important part of web design Why do you think your page layout is important?
Advertisements

Unit Testing in the OO Context(Chapter 19-Roger P)
Chapter 19 Design Model for WebApps
Copyright © 2004 ProsoftTraining, All Rights Reserved. Lesson 10: GUI HTML Editors.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
02/12/00 E-Business Architecture
Design Modeling for Web Applications
Lecture 11 Component-based Software Engineering Client/server Software Engineering Web Engineering.
Interpret Application Specifications
CASE Tools CIS 376 Bruce R. Maxim UM-Dearborn. Prerequisites to Software Tool Use Collection of useful tools that help in every step of building a product.
Copyright 2003 The McGraw-Hill Companies, Inc CHAPTER Application Software computing ESSENTIALS    
1 Web Testing CIS 376 Bruce R. Maxim UM-Dearborn.
Course Instructor: Aisha Azeem
Web-Enabling the Warehouse Chapter 16. Benefits of Web-Enabling a Data Warehouse Better-informed decision making Lower costs of deployment and management.
Introduction to Software Testing
1 Web Testing CIS 376 Bruce R. Maxim UM-Dearborn.
Client-Server Processing and Distributed Databases
Glenn Research Center at Lewis Field Software Assurance of Web-based Applications SAWbA Tim Kurtz SAIC/GRC Software Assurance Symposium 2004.
Web-based Portal for Discovery, Retrieval and Visualization of Earth Science Datasets in Grid Environment Zhenping (Jane) Liu.
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
Copyright © 2004 ProsoftTraining, All Rights Reserved. Lesson 10: GUI HTML Editors © 2007 Prosoft Learning Corporation All rights reserved ITD 110 Web.
1 Chapter 20 Testing Web Applications Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
CIS 375 Final Presentation Doug Code § Brad Lloyd § Michelle Zukowski.
Chapter 9 Collecting Data with Forms. A form on a web page consists of form objects such as text boxes or radio buttons into which users type information.
1 Introduction to Web Development. Web Basics The Web consists of computers on the Internet connected to each other in a specific way Used in all levels.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 13 Slide 1 Application architectures.
Chapter : 13 WebApp Design
Systems Analysis and Design in a Changing World, 6th Edition
Website evaluation models and acceptability factors K.Vipartienė, E. Valavičius.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Chapter 10 Architectural Design
Samuvel Johnson nd MCA B. Contents  Introduction to Real-time systems  Two main types of system  Testing real-time software  Difficulties.
Objectives Overview Define the term, database, and explain how a database interacts with data and information Define the term, data integrity, and describe.
1 WEB Engineering Introduction to Electronic Commerce COMM1Q.
System Design: Designing the User Interface Dr. Dania Bilal IS582 Spring 2009.
These slides are designed to accompany Web Engineering: A Practitioner’s Approach (McGraw-Hill 2008) by Roger Pressman and David Lowe, copyright
3231 Software Engineering By Germaine Cheung Hong Kong Computer Institute Lecture 12.
Web Engineering Web engineering is the process used to create high quality WebApps. Web engineering is not a perfect clone of software engineering. But.
Content Management Systems Week 14 LBSC 671 Creating Information Infrastructures.
Patterns, effective design patterns Describing patterns Types of patterns – Architecture, data, component, interface design, and webapp patterns – Creational,
1 WEB Engineering E-Commerce Strategy & Management COM350.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Software Project Documentation. Types of Project Documents  Project Charter  Requirements  Mockups and Prototypes  Test Cases  Architecture / Design.
Discovering Computers Fundamentals Fifth Edition Chapter 9 Database Management.
Objectives Overview Define the term, database, and explain how a database interacts with data and information Describe the qualities of valuable information.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Web Engineering and Technology Unit I. Categories/Types of Web-Based Systems CategoryExamples Document centricOnline newspapers, manuals InteractiveRegistration.
5 - 1 Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved.
INFO 355Week #71 Systems Analysis II User and system interface design INFO 355 Glenn Booker.
WEP Presentation for non-IT Steps and roles in software development 2. Skills developed in 1 st year 3. What can do a student in 1 st internship.
C OMPUTING E SSENTIALS Timothy J. O’Leary Linda I. O’Leary Presentations by: Fred Bounds.
Rational Unified Process Fundamentals Module 7: Process for e-Business Development Rational Unified Process Fundamentals Module 7: Process for e-Business.
Evaluating & Maintaining a Site Domain 6. Conduct Technical Tests Dreamweaver provides many tools to assist in finalizing and testing your website for.
Producing a high-impact web experience by integrate Macromedia Flash and ASP By Katie Tuttle CS 330: Internet Architecture and Programming Project.
Microsoft FrontPage 2003 Illustrated Complete Integrating a Database with a Web Site.
Software Testing and Quality Assurance 1. What is the objectives of Software Testing?
Creating & Building the Web Site Week 8. Objectives Planning web site development Initiation of the project Analysis for web site development Designing.
Main Concepts of Web Testing Telerik Software Academy Software Quality Assurance.
Testing and delivery Web design principles. Web development is software development.
WEB TESTING
Chapter 20 Testing Web Applications
Chapter 25 Testing Web Applications
PPT By:Bruce R. Maxim UM-Dearborn
Chapter 25 Testing Web Applications
Introduction to Software Testing
Static Testing Static testing refers to testing that takes place without Execution - examining and reviewing it. Dynamic Testing Dynamic testing is what.
CIS 376 Bruce R. Maxim UM-Dearborn
Software Engineering: A Practitioner’s Approach, 6/e Chapter 20 Testing Web Applications copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Web Application Development Using PHP
Chapter 20 Testing Web Applications
Presentation transcript:

Objectives  Testing Concepts for WebApps  Testing Process  Content Testing  User Interface Testing  Component-level testing  Navigation Testing  Configuration Testing  Security Testing  Performance Testing

Web-testing?  To understand the testing objectives of web,  Need to understand a set of quality and  Need to understand the environment in which web-application is configured

Web Application Quality: Web Quality Usability simplicity Help feature GUI & Aesthetic Functionality Researching retrieving Navigation /browsing Special features Efficiency Response Time, Pg generation speed Graphic generation speed Reliability Correct link processing Error recovery I/O validation Maintainability Ease of correction adaptability extensibility Security

Testing Concepts:1  WebApp testing  A collection of related activities to uncover errors  Content (Data)  Capability (functionality)  Quality (non-functionality)

Testing Concepts:2  Who does it?  Web designer (or engineer)  Why is important?  Customers loss confidence  Business loss because customer may go to different sites

Web-Testing: Challenges  Main difficulty to localize errors due to  OS  NTW  HW/SW

Dimensions of Quality  WebApp design Evaluated by  Review/inspection  Testing

Evaluation and Quality  Both Static/dynamic testing work with dimension of quality  Content:  Syntactic and semantics  Functions:  Customer expectation is tested  Usability:  ease of use  Compatibility:  test under different HW/SW  Navigability:  ease of navigation (e.g., deadlinks)  Interoperability:  ease of interfacing with different applications  Security: vulnerabilities  maintainability:  ease of change  Performance:  Speed under different OSs

Characteristics of errors in Webapp  Localizing error in webapp is different from traditional applications  Characteristics of errors in WebApp  Interfacing errors (PDA/Mobile phone, etc)  Configuration errors  Client/Server errors

Testing Strategies?  What kind of testing strategy can be adopted for WebApp?  Is there any testing pattern that can be adopted for Webapp?  Can we use the architecture of a system?

Web testing  The steps that can be used to detect errors in webapp  Review Content model  Review Interface model (all use-cases, usability)  Review design for navigation  Review design for maintenance  Test for security  Test for performance  Test for usability concerns  …

WebApp Test Planning  planning is a roadmap for all work that follows  A WebApp test plan identifies  A task set to be applied as testing begin  The work products to be created as each task is implemented  The assessment by which the test results is evaluated, recorded, and reused

The testing process Test Content Security test Performance testing Conf. test Test Components (pg) Test navigation (link, menu, etc) test Interface Used for Integration testing GUI design, graphic design, Content design, navigation design, Architecture design Component design

WebAPP Testing: Process or Task set  Process 1. Review stakeholder needs and key requirements 2. Set the priorities 3. Define testing strategy using the content structure (linear, grid, hierarchy, NTW, etc) 4. Define a test schedule 5. Assign responsibilities for tasks 6. Perform unit test (pages) 7. Perform integration test using navigations and content 8. Perform configuration (assess C-side and S-side for configurability) 9. Perform load or other testing for performance 10. Perform security testing (try to break your own system) 11. Perform Usability testing 12. …

Web testing: Content Testing  Content testing objectives include  Uncover syntactic errors  Typographical  Spelling  etc  Use proper tools (e.g. Spell checkers)

Content Testing: Test for Semantics errors  Uncover semantics errors by testing  Accuracy of info (executable testing (e.g. DB))  Consistency of info ( Internal vs external).  Testing for offensive material (e.g. copyright, offensive, etc)  Readability  Graphic style  …

e.g. test for Accuracy of info in Database (DB)  WebApp works with sophisticated DBMS  e.g. airline reservation system  The objective is to identify the following problems  Mismatch between SQL query and user requests  Communication errors due to remote DB and web- server  Compatibility of raw data from DB to the original requesters

Layer of interface and test design Client layer (user interface) Sever layer (webapp) Server layer (data Transformation) Server layer (data mgt) Database layer (data access) DB HTML scripts User Data User Data to SQL Raw Data/SQL Need test cases design methods for each layer of interaction

Web Testing: GUI Testing  GUI Testing  V&V of a web-app for GUI takes place  During requirements analysis ( conformance to the user requirements)  During design ( ensure generic quality for all user have been met)  During testing (execute both generic and application specific features of GUI)

Checklist for Interface testing  Testing interface structure (or syntax)  Links  Forms  C-side scripting  Dynamic HTML  Pop-up windows  CGI scripts  Streaming content  Cookies (both sides (C/S), content, expiration date)  Application specific interface mechanism (check out request)  …

Example  the list of interface features  Animation  Buttons  Color  Control  Dialoged  Fields  Forms  Frames  Graphs  Labels  Links  Menus  Messages  Navigation  Pages  Selectors  Text  Tool bars

Usability?  What is usability?  How quickly people can learn to use something  How efficient they are while using it  How memorable it is  How error-prone it is  How much users like using it

Testing interface for Usability  Test how good user can interact with webApp?  usability testing  Usability test  designed by web engineer  evaluated by end-users  What is usability measure?  can the site be used at all  Web-wide tasks has been widely used for usability testing

Steps to perform Usability Testing  The following process can be used 1. Define a set of usability testing categories (accessibility, comfortably, etc) 2. Identify goals for each categories 3. identify participants who will conduct the tests 4. Develop a mechanism for assessing the usability of the WebApp

Qualitative assessment of usability  Qualitative assessment of usability  Ease of use  Easy to learn  Simplicity  Effectiveness  Ease of understandability  Clear  Informative  Ease of Predictability  Inconsistent  Generally uniform  predicable

Component level testing (function)  Driven by form level input  Can be tested using Black box techniques  Equivalence partition  Boundary value analysis  Path testing  Needed if the logical complexity of the function is high

Compatibility testing  WebApp must work within different environments  Different computers  Display devices  Different OS  Different Browsers

Summary  The main objective for webApp testing include  Exercise each of quality/functionality dimensions of WebApp to locate the errors  Tests are driven by users and/or specification in the form of use-case scenarios

Open questions  How to perform compatibility testing?  Server side  Client side  How to perform quality testing?  How to specify usability? Security?  What are the coverage criteria for  Content?  GUI?  Navigation?