Software Testing
-
Module : General Defects Students Understand what the most general failures are in software and how to quickly uncover bugs
-
Concepts/Demos
-
Divide by zero, Infinite loop
-
Index Out of range, Null pointer
-
Argument out of range, Stack overflow
-
Zero based index issues, Memory leak with managed code
-
Deadlocks
-
Hands on lab
Run sample programs and observe the type of exceptions and spot potential bugs
-
Module: Unit Testing with VS2010
Students Understand Test Planning, Unit testing, and Code Coverage
-
Concepts / Demo
-
Understanding unit testing
-
Writing a Test Plan
-
Basic positive test case
-
Basic negative test cases
-
How to write unit tests with VS2010
-
How to run unit tests
-
How to look for failures
-
Hands on lab
Work in groups to develop a test plan, write unit tests and obtain code coverag
-
Module: Unit Testing with VS2010 – Advanced Concepts
GOAL: Students Understand assertions, test prioritization, metadata and data driven tests
-
Concepts
-
Assertions
-
Test Prioritization
-
Test Metadata
-
Data Driven unit tests
-
Expected Exception Type
-
Demo
-
Hands on lab
Work in groups to code assertions, prioritize tests and understand data driven tests
-
Module : Code Coverage
Students Understand the concept of code coverage is and how to get code coverage
-
Concepts
-
Code Coverage
-
Block Coverage
-
Arc Coverage
-
Getting CC via VS
-
Getting CC via command line
-
Demo
-
Hands on lab
Work in groups get code coverage for a given assembly/product via Visual Studio, or via command line tools
-
Module: Fault Injection
Students Understand how to induce faults and uncover bugs
-
Concepts
-
Faults
-
Error Conditions
-
Fault Injection techniques
-
Demo
-
Hands on lab
Work in groups to develop tests that simulate faults
-
Model based testing using Spec Explorer
Students Understand how to model software as a finite state machine and generate tests
-
Concepts
-
Model based
-
State diagrams
-
Transitions
-
All paths
-
All States
-
Demo
-
Hands on lab
Work in groups to develop a model based test and run it.
-
Module: Localization & Globalization
Students Understand localization/globalization issues and learn how to test for loc/glob testing
-
Concepts
-
Localization
-
Globalization
-
Bugs typically found in localization/Globalization
-
Demo
-
Hands on lab
Work in groups to test for localization/Globalization issues
-
Module: Security
Students understand the issues with Admin oriented access and what issues occur when regular users try to install or use the system
-
Concepts
-
Admin
-
Users
-
Groups
-
Bugs typically found when running under normal user
-
Demo
-
Hands on lab
Work in groups to test under regular users
-
Module: Web Testing
GOAL: Students Understand how to test/automate Web/ASP.NET applications
-
Concepts
-
Web testing fundamentals
-
Introduction to Http protocol
-
Client side behavior and Java script
-
Web UI testing concepts
-
Demo
-
Visual Studio 2010 Web testing tool
-
Hands on lab
Work in groups to develop a web test
-
Module: Web Testing – Advanced Concepts
Students Understand test/automate Web/ASP.NET applications
-
Concepts
-
Using GUI element finder tool
-
Selecting from drop down lists
-
Checking radio buttons and check boxes
-
Using Network Monitor
-
Demo
-
Visual Studio 2010 Web testing tool
-
Hands on lab
Work in groups to develop a Web test for a complete scenario and run the test in Visual Studio 2010
-
Module: Windows UI Testing GOAL: Students Understand how to test Web UI
-
Concepts
-
Difference between API testing and GUI testing
-
General techniques for GUI testing
-
Using simple tools, vbScript, AutoIt
-
Demo
-
Simple UI Automation with VbScript/PowerShell
-
Hands on lab
Work in groups to develop a UI test
-
Module: Windows UI Testing – Advanced Concepts
Students Understand how to test windows GUI
-
Concepts
-
Finding UI Elements
-
Finding Windows
-
Finding Controls
-
Automation of windows and windows controls
-
Demo
Visual Studio 2010 UI testing tool
-
Hands on lab
Work in groups to develop a UI test for a complete scenario
-
Module: Performance Testing
-
Concepts
-
What is performance testing
-
Difference between performance and stress testing
-
Types of bugs uncovered
-
Performance testing tools
-
General performance issues
-
Demo
Visual Studio 2010 Performance Analyzer
-
Hands on lab
Students develop a performance test, obtain logs and analyze
-
Module: Stress Testing
-
Concepts
-
Why Stress testing is important
-
Types of bugs uncovered
-
Stress testing techniques and tools
-
Load testing techniques and tools
-
Getting debug memory dumps and analyzing
-
Demo
Visual Studio 2010 load test tool
-
Hands on lab
Students develop a stress test for a sample application
-
Module: Interview Preparation
-
Concepts
-
How to prepare
-
What to expect
-
How to write code
-
How to write test cases
-
How to defend random questions
-
Demo
Students go through a set of questions and a simulated interview to understand and prepare for the interview.
-
Module: Live Interview
-
Concepts
-
Coding Questions
-
Testing Questions
-
Live Interview
Students go through a mock interview that simulates the tough interview environment.
They take a random coding question and write code on the board, debug and test
|