Building a Login Test Automation Framework with Selenium & Azure DevOps
Published on: April 21, 2026
In this project, I built an end-to-end test automation framework to validate the login functionality of a web application. The goal was to simulate a real-world QA workflow by combining manual testing, automation, version control, and CI/CD practices.
Project Overview
The application under test was a sample login page. The objective was to validate both positive and negative login scenarios using automation.
Test Scenarios Covered:
- Valid login with correct credentials
- Invalid login with incorrect username/password
- Error message validation
Tools & Technologies Used
- Python – Used to write automation scripts
- Selenium WebDriver – Used to automate browser interactions
- Pytest – Used as the test runner to execute test cases
- Azure DevOps – Used for test case management and CI pipeline
- Git & GitHub – Used for version control and code hosting
Framework Design
The automation framework was designed using the Page Object Model (POM) to improve code maintainability and reusability. This structure separates test logic from UI element locators.
Example Flow:
Open Login Page
Enter Username & Password
Click Login
Validate Success/Error Message
CI/CD with Azure Pipelines
The project was integrated with Azure Pipelines to enable Continuous Integration (CI). The pipeline automatically runs whenever code is pushed to the repository.
Pipeline Workflow:
- Fetch code from GitHub repository
- Install Python dependencies
- Execute Selenium tests using Pytest
- Generate test results (JUnit XML)
- Generate HTML test report
- Publish test results and reports
Pipeline YAML (Simplified):
trigger:
- main
steps:
- install dependencies
- run tests
- publish results
Test Execution & Reporting
Test execution is handled by Pytest, which provides clear pass/fail results. Additionally, an HTML report is generated after execution to provide a visual summary of test results.
Sample Output:
The following screenshot shows the HTML test report generated after execution:
Key Learnings
- Understanding end-to-end QA workflow from test design to automation
- Implementing Page Object Model for scalable automation
- Using Git for version control and managing code changes
- Integrating CI pipelines using Azure DevOps
- Generating and interpreting test reports