Web Software Testing (WBT)
While many of the traditional concepts of software testing still hold true, Web sites and Web applications have a different risk profile to other, more mature environments. A typical Web tester now has to deal with shorter release cycles, changing technology, complex hardware and software platforms and an anticipated user base which is uncontrolled and may run into millions. Many testers and test managers are being asked to make the transition from testing traditional client/server, PC, and/or mainframe environments to testing Web sites and applications. This course seeks to help those making this transition by explaining Web technologies, the issues associated with Web testing and suggesting solutions, strategies and techniques that can be used in testing a Web site.
The course is instructor-led with lecture presentations being supported by hands-on practical work using a number of fictitious Web sites, which allow reinforcement of learning and enhances the understanding process. In addition, various testing tools will be demonstrated.
The course is designed for software testers, members of QA teams and test managers who need to understand the technology used by Web developers so that they may perform or manage efficient and effective testing of Web sites or applications.
A basic knowledge of the Internet and software testing. Attendance on the Structured Approach to Software Testing course would be an ideal prerequisite.
Upon successful completion of this course, students will be able to:
Understand the different technologies used in Web environments.
Communicate adequately with Web developers to ascertain the nature of the development and production environments including the functionality of the site or application.
Examine and validate functional and non-functional requirements for Web sites and applications.
Specify appropriate test environments.
Perform a simple risk analysis to identify and prioritise tests.
Create appropriate tests, test cases and test scripts.
Execute tests in a controlled manner using the correct setup conditions and inputs.
Understand the nature, availability and limitations of Web testing tools.
Internet and Web History
Basic Internet Architecture
IP, TCP and HTTP
URLs and DNS
Intranets and Extranets
Virtual Private Networks
Code Quality Assurance
Quality Control and Quality Assurance
Hypertext Markup Language (HTML)
Cascading Style Sheets (CSS)
Web Open Font Format (WOOF)
Extensible Markup Language (XML)
Document Type Definitions (DTD)
Displaying XML with CSS
Extensible Stylesheet Language (XSL)
Client Hardware and Software
Different Browsers (IE, Firefox, Chrome, Opera, Safari)
Internet Explorer 8 and 9 Compatibility View
Choosing the Test Environment
Software Configuration Tools
Installability and Serviceability
Static and Dynamic Links
Internal Search Engines
Site Navigation Tools
Risk Based Testing
Client-side and Server-side Validation
Document Object Model
Variable Screen Resolutions
Java and the Java Virtual Machine
Dynamic Page Generation (ASP, PHP, Python, Ruby, etc.)
Common Gateway Interface (CGI)
Interfacing to Back-Office Systems
Internet Explorer Web Slices
Maintaining a Session
State Transition Diagrams
SSL and TLS
Public Key Infrastructure
Importance of User Interface
Actors and Use Cases
Screen Size and Resolution
Printer Friendly Pages
Performing Usability Tests
Guidelines for Usability Testing
Globalisation and International Environments
Components of Web Accessibility
Web Accessibility Initiative
WAI Guidelines and Techniques
Web Content Accessibility Guidelines
Evaluation Web Sites for Accessibility
Search Engines and Directories