Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Coursera

Advanced Automation Frameworks and Continuous Integration

Packt via Coursera

Overview

In this advanced course, you'll journey through automation frameworks and continuous integration, starting with Python logging infrastructure, mastering message logging, custom log formats, and logger utilities. You'll delve into the unittest framework, writing test cases, implementing setup and teardown methods, and running tests from the terminal. Next, explore Pytest, learning fixtures, test orders, and HTML test reports. The course's three-part modules focus on building robust frameworks with Selenium WebDriver and Python, covering logging, test result verification, and dynamic elements handling. Practice exercises reinforce these concepts. Additionally, learn data-driven testing, complete test suite execution, and version control with Git and GitHub. You'll also set up and secure Jenkins, manage plugins, and build remote projects, streamlining your CI/CD pipelines. By the end, you'll be adept in automation frameworks and continuous integration, ready to tackle complex projects confidently. This course targets software developers, QA engineers, and automation testers with basic Python knowledge. Familiarity with Selenium WebDriver and basic testing concepts is recommended.

Syllabus

  • Logging Infrastructure
    • In this module, we will delve into the logging infrastructure in Python. You'll learn how to log messages effectively, customize log formats, and use both console and configuration file-based logging. Additionally, we'll guide you through creating a versatile custom logger utility for robust logging across various applications.
  • Unittest Infrastructure
    • In this module, we will explore the unittest infrastructure provided by Python. You will gain insights into writing test cases, implementing setup and teardown methods, and asserting test results. This section also covers practical tips on exporting PYTHONPATH, running tests from the terminal, and creating comprehensive test suites.
  • Pytest - Advanced Testing Framework
    • In this module, we will explore the advanced features of the pytest framework. You'll learn to install pytest, write scripts, and use fixtures for more modular testing. We will also cover various test execution methods, including command-line arguments, and generating detailed HTML reports to enhance your testing process.
  • Automation Framework - Part 1
    • In this module, we will introduce the concepts and structure of an automation framework using Selenium WebDriver and Python. You will learn to convert test cases to the Page Object Model, refactor page object classes, and build custom Selenium drivers to enhance your testing efficiency.
  • Automation Framework - Part 2
    • In this module, we will continue building the automation framework by adding logging capabilities, verifying test case results, and refining our test cases. You will also learn how to implement and refactor common setup methods using conftest to make your framework more maintainable and readable.
  • Automation Framework - Part 3
    • In this module, we will further enhance our automation framework by implementing non-blocking assertions and screenshot functionality for test failures. We will also introduce the concepts of BasePage and Util classes to streamline your framework's structure and improve code reuse.
  • Automation Framework - Practice Exercise
    • In this module, we will provide practical exercises to reinforce your understanding of the automation framework. You will practice using additional methods in the custom driver, solve exercises related to finding element locators, creating page and test classes, and handling dynamic elements like iframes.
  • Data-Driven Testing
    • In this module, we will focus on data-driven testing techniques. You'll learn to set up the necessary tools, implement practical test cases, and develop utilities for reading CSV data. This approach will enable you to create more flexible and comprehensive test scenarios.
  • Running Complete Test Suite
    • In this module, we will cover the execution of a complete test suite. You will learn to implement a common navigation class, refactor login tests, and run your test suite on various browsers, ensuring comprehensive test coverage and reliability.
  • Git and GitHub - Version Control System
    • In this module, we will introduce you to Git and GitHub for version control. You will learn to install Git, manage repositories, handle branching and merging, and collaborate efficiently with your team using GitHub. Real-time examples will help you grasp the practical aspects of version control.
  • Continuous Integration with Jenkins
    • In this module, we will delve into continuous integration with Jenkins. You will explore Jenkins' features, set up and secure Jenkins installations, manage plugins, and build remote projects using Git and Jenkins, enhancing your CI/CD pipeline.
  • Conclusion
    • In this module, we will conclude the course by discussing the next steps you can take, providing access to additional free resources, and suggesting further learning opportunities to continue advancing your automation and testing skills.

Taught by

Packt

Reviews

Start your review of Advanced Automation Frameworks and Continuous Integration

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.