Skip navigation.
Home

Software Testing

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