Course Duration: 8 weeks (2-3 hours per week)

Module 1: Introduction to QTP/UFT

  • Overview of QTP/UFT and its features
  • Understanding the QTP/UFT testing process
  • Exploring the QTP/UFT user interface
  • Setting up the testing environment and configurations

Module 2: Recording and Playback

  • Recording and playback of test scripts in QTP/UFT
  • Understanding different recording modes (normal, analog, low-level)
  • Enhancing recorded scripts with checkpoints and output values
  • Parameterization and data-driven testing in QTP/UFT

Module 3: Object Identification and Repositories

  • Understanding the object identification process in QTP/UFT
  • Managing object repositories (local, shared, per-action)
  • Enhancing object recognition using Smart Identification
  • Best practices for maintaining object repositories

Module 4: Working with Actions and Functions

  • Creating and organizing test actions in QTP/UFT
  • Implementing reusable components with functions and libraries
  • Calling external functions and libraries in QTP/UFT scripts
  • Parameterization and data-driven testing with actions and functions

Module 5: Synchronization and Wait Mechanisms

  • Understanding synchronization in QTP/UFT
  • Implementing synchronization points and waits in test scripts
  • Handling dynamic elements and asynchronous operations
  • Best practices for effective synchronization in QTP/UFT

Module 6: Descriptive Programming

  • Introduction to descriptive programming in QTP/UFT
  • Writing test scripts without using object repositories
  • Implementing dynamic object identification using properties
  • Advantages and limitations of descriptive programming

Module 7: Checkpoints and Reporting

  • Using checkpoints to verify application state and behavior
  • Implementing different types of checkpoints (standard, image, database)
  • Generating test reports and logs in QTP/UFT
  • Customizing test reports and integrating with external reporting tools

Module 8: Parameterization and Data-Driven Testing

  • Parameterizing test scripts in QTP/UFT
  • Implementing data-driven testing with external data sources (Excel, CSV)
  • Working with data tables and data-driven actions
  • Best practices for efficient parameterization and data-driven testing

Module 9: Error Handling and Recovery Scenarios

  • Handling errors and exceptions in QTP/UFT scripts
  • Implementing error handling mechanisms (On Error, Err object)
  • Defining recovery scenarios for handling unexpected events
  • Debugging and troubleshooting QTP/UFT scripts

Module 10: Advanced QTP/UFT Features

  • Working with advanced features of QTP/UFT (Web services, XML testing)
  • Integrating QTP/UFT with other tools and frameworks (ALM, CI/CD pipelines)
  • Exploring advanced scripting techniques (regular expressions, file handling)
  • Using object identification center for object recognition issues

Module 11: Automation Frameworks with QTP/UFT

  • Overview of automation frameworks (data-driven, keyword-driven, hybrid)
  • Creating and implementing automation frameworks in QTP/UFT
  • Best practices for designing and maintaining automation frameworks
  • Integrating QTP/UFT with existing automation frameworks

Module 12: Continuous Integration and Delivery (CI/CD)

  • Integrating QTP/UFT with CI/CD pipelines (Jenkins, Bamboo)
  • Configuring and executing QTP/UFT tests in CI/CD environments
  • Analyzing test results and artifacts in CI/CD pipelines
  • Best practices for automation testing in CI/CD workflows

Module 13: Performance Testing with LoadRunner (Optional)

  • Overview of performance testing and its objectives
  • Introduction to LoadRunner for performance testing
  • Configuring and executing performance tests with LoadRunner
  • Analyzing performance test results and identifying bottlenecks

Module 14: Security Testing with QTP/UFT (Optional)

  • Introduction to security testing and its importance
  • Automating security tests with QTP/UFT
  • Testing for common security vulnerabilities (SQL injection, XSS)
  • Integrating security testing into the QA process

Module 15: Capstone Project

  • Students will work on a capstone project to apply the skills learned throughout the course
  • Project topics may include automating test scenarios for a sample application, implementing an automation framework, or integrating automation testing into a CI/CD pipeline

Assessment:

  • Assignments and quizzes after each module
  • Mid-term and final exams covering the entire syllabus
  • Evaluation of the capstone project

Prerequisites:

  • Basic understanding of software testing concepts and methodologies
  • Familiarity with programming concepts (preferably VBScript for QTP/UFT)