You are previewing Testing .NET Application Blocks.
O'Reilly logo
Testing .NET Application Blocks

Book Description

Get practical, detailed guidance for testing Microsoft PATTERNS & PRACTICES application blocks and other Microsoft .NET application code—with coverage of key testing areas, code examples, sample test cases, and essential checklists.

Table of Contents

  1. Testing .NET Application Blocks
  2. 1. Introduction
    1. Overview
    2. Why We Wrote This Guide
    3. Scope of This Guide
    4. Audience
    5. How to Use This Guide
      1. Applying the Guidance to Your Role
      2. Applying the Guidance to Your Application's Life Cycle
    6. The Team Who Brought You This Guide
    7. Contributors and Reviewers
    8. Summary
    9. Appendix
  3. 2. Testing Methodologies
    1. Objectives
    2. Overview
    3. Software Development Methodologies and Testing
      1. Waterfall Model
      2. Incremental or Iterative Development
      3. Prototyping Model
      4. Agile Methodology
      5. Extreme Programming
        1. When to Use Extreme Programming
        2. More Information
    4. Test-Driven Development
    5. Steps in Test-Driven Development
      1. Step 1: Create the Test Code
        1. More Information
      2. Step 2: Write or Modify the Functional Code
      3. Step 3: Create Additional Tests
      4. Step 4: Test the Functional Code
      5. Step 5: Refactor the Code
    6. Agile Testing: Example
    7. Summary
  4. 3. Testing Process for Application Blocks
    1. Objective
    2. Overview
    3. Testing Process
      1. Input
      2. Steps
      3. Step 1: Create Test Plans
      4. Step 2: Review the Design
        1. More Information
      5. Step 3: Review the Implementation
        1. More Information
      6. Step 4: Perform Black Box Testing
        1. More Information
      7. Step 5: Perform White Box Testing
        1. More Information
    4. Summary
    5. Appendix
  5. 4. Design Review for Application Blocks
    1. Objectives
    2. Overview
    3. Design Review Process
      1. Input
      2. Steps
      3. Step 1: Create Test Plans
        1. More Information
      4. Step 2: Verify That the Design Addresses All Functional Specifications and Requirements
      5. Step 3: Verify That the Design Addresses All Deployment Scenarios
        1. More Information
      6. Step 4: Verify That the Design Considers Performance and Scalability Tradeoffs and Best Practices
        1. More Information
      7. Step 5: Verify That the Design Considers the Security Tradeoffs and Best Practices
        1. More Information
      8. Step 6: Verify That the Design Uses Best Practices for Ease of Maintenance and Customization
        1. More Information
      9. Step 7: Verify That the Design Addresses Globalization Issues for the Desired Cultures
        1. More Information
      10. Step 8: Verify That the Design Has An Effective Exception Management Strategy
        1. More Information
    4. Tools for Architecture and Design Review
    5. Summary
  6. 5. Code Review for Application Blocks
    1. Objective
    2. Overview
    3. Application Block Code Review
      1. Input
      2. Code Review Steps
      3. Step 1: Create Test Plans
      4. Step 2: Ensure That the Implementation Is in Accordance with the Design
      5. Step 3: Ensure That Naming Standards Are Followed
      6. Step 4: Ensure That Commenting Standards Are Followed
      7. Step 5: Ensure That Performance and Scalability Guidelines Are Followed
      8. Step 6: Ensure That Guidelines for Writing Secure Code Are Followed
      9. Step 7: Ensure That Globalization-related Guidelines Are Followed
      10. Step 8: Validate Exception Handling in the Code
      11. Step 9: Identify the Scenarios for More Testing
    4. Tools
    5. Summary
  7. 6. Black Box and White Box Testing for Application Blocks
    1. Objectives
    2. Overview
    3. Black Box Testing
      1. Input
      2. Black Box Testing Steps
      3. Step 1: Create Test Plans
      4. Step 2: Test the External Interfaces
      5. Step 3: Perform Load Testing
      6. Step 4: Perform Stress Testing
      7. Step 5: Perform Security Testing
      8. Step 6: Perform Globalization Testing
    4. White Box Testing
      1. Input
      2. White Box Testing Steps
      3. Step 1: Create Test Plans
      4. Step 2: Profile the Application Block
      5. Step 3: Test the Internal Subroutines
      6. Step 4: Test Loops and Conditional Statements
      7. Step 5: Perform Security Testing
    5. Tools
      1. Profiling
      2. Instrumentation
    6. Summary
  8. 7. Globalization Testing for Application Blocks
    1. Objective
    2. Overview
    3. Testing Process for Globalization
      1. Input
      2. Steps
      3. Step 1: Create Test Plans
        1. Decide the Priority of Each Scenario
        2. Select a Test Platform
        3. Sample Test Scenario
      4. Step 2: Create the Test Environment
      5. Step 3: Execute Tests
      6. Step 4: Analyze the Results
    4. Summary
    5. Additional Resources
  9. 8. Performance Testing for Application Blocks
    1. Objectives
    2. Overview
    3. Performance Objectives
    4. Load Testing
      1. Input
      2. Load Testing Steps
      3. Step 1: Identify Key Scenarios
      4. Step 2: Identify Workload
      5. Step 3: Identify Metrics
      6. Step 4: Create Test Cases
        1. Test Case for the CMAB Sample Application Block
      7. Step 5: Simulate Load
      8. Step 6: Analyze the Results
    5. Stress Testing
      1. Input
      2. Stress Testing Steps
      3. Step 1: Identify Key Scenarios
      4. Step 2: Identify Workload
      5. Step 3: Identify Metrics
      6. Step 4: Create Test Cases
        1. Test Case for the CMAB Sample Application Block
      7. Step 5: Simulate Load
      8. Step 6: Analyze the Results
    6. Tools
      1. Load Simulators and Generators
      2. Performance Monitoring Tools
    7. Summary
  10. 9. Integration Testing for Application Blocks
    1. Objectives
    2. Overview
      1. Sample Application Block
      2. Sample Business Application
    3. Unit Testing a Customized Application Block
      1. Step 1: Create Test Plans
      2. Step 2: Review the Design
      3. Step 3: Review the Implementation
      4. Step 4: Perform Black Box Testing
      5. Step 5: Perform White Box Testing
      6. Step 6: Regression Test the Existing Functionality
      7. More Information
    4. Integration Testing an Application Block
      1. Input for Integration Testing
      2. Steps for Integration Testing
      3. Step 1: Create Test Plans
      4. Step 2: Perform Code Review of the Application Modules That Integrate the Application Block
      5. Step 3: Execute the Use Cases of the Application
      6. Step 3: Perform Load Testing
        1. Identify the Test Scenarios
        2. Identify the Workload
        3. Identify the Metrics
        4. Create the Test Cases
        5. Simulate the Load
        6. Analyze the Results
      7. Step 4: Perform Stress Testing
        1. Identify the Key Scenarios
        2. Identify the Workloads
        3. Identify the Metrics
        4. Create the Test Cases
        5. Simulate the Load
        6. Analyze the Results
          1. More Information
      8. Step 5: Perform Globalization Testing
        1. More Information
      9. Step 6: Perform Security Testing
        1. More Information
    5. Summary
    6. Appendix
  11. A. patterns & practices: proven practices for predictable results
    1. About Microsoft patterns & practices
    2. Reduce project cost
    3. Increase confidence in solutions
    4. Deliver strategic IT advantage
    5. patterns & practices: Current Titles
  12. Index
  13. About the Author
  14. Copyright