{"id":26266149,"url":"https://github.com/md-sikder/selenium-pytest-github-ci-cd","last_synced_at":"2025-03-14T03:17:03.764Z","repository":{"id":264143512,"uuid":"888324075","full_name":"md-sikder/selenium-pytest-github-ci-cd","owner":"md-sikder","description":"This repository contains a web automation framework using Selenium, Python, and Pytest, integrated with GitHub Actions for Continuous Integration (CI) and Continuous Deployment (CD), enabling automated tests to run with codebase changes.","archived":false,"fork":false,"pushed_at":"2024-11-22T08:49:08.000Z","size":23,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-28T19:18:21.711Z","etag":null,"topics":["html-report","pytest","selenium-python","webautomationtesting"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/md-sikder.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-14T07:49:14.000Z","updated_at":"2025-01-03T19:20:18.000Z","dependencies_parsed_at":"2024-11-22T09:19:02.547Z","dependency_job_id":"f7df6e49-c97e-4952-afdd-304861a9f590","html_url":"https://github.com/md-sikder/selenium-pytest-github-ci-cd","commit_stats":null,"previous_names":["mdsikder/selenium-pytest-github-ci-cd","rased-sikder/selenium-pytest-github-ci-cd","md-sikder/selenium-pytest-github-ci-cd"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/md-sikder%2Fselenium-pytest-github-ci-cd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/md-sikder%2Fselenium-pytest-github-ci-cd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/md-sikder%2Fselenium-pytest-github-ci-cd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/md-sikder%2Fselenium-pytest-github-ci-cd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/md-sikder","download_url":"https://codeload.github.com/md-sikder/selenium-pytest-github-ci-cd/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243515532,"owners_count":20303258,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["html-report","pytest","selenium-python","webautomationtesting"],"created_at":"2025-03-14T03:17:03.190Z","updated_at":"2025-03-14T03:17:03.749Z","avatar_url":"https://github.com/md-sikder.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Web Automation Framework with Selenium, Python, and GitHub Actions CI/CD\n\nThis project is a **web automation framework** using **Selenium** and **Python**, integrated with **GitHub Actions** for **Continuous Integration and Continuous Deployment (CI/CD)**. The framework is designed for automating web application testing, with the tests executed automatically on each code push to the repository.\n\n## Features\n\n- **Web Automation:** Use Selenium and Python to automate web application testing.\n- **CI/CD Integration:** Automatically run tests with GitHub Actions on each push to the repository.\n- **Test Reporting:** Generate test reports in HTML format, making it easy to view test results.\n- **Easy Setup:** Minimal configuration required to get started.\n  \n## Getting Started\n\nFollow the steps below to set up and run the automation framework locally and on GitHub.\n\n### Prerequisites\n\n- **Python 3.8+** installed on your local machine.\n- **Google Chrome** and **ChromeDriver** (or any browser and corresponding driver of your choice).\n- **GitHub Account** for pushing code and utilizing GitHub Actions CI/CD.\n\n### Installation\n\n1. Clone this repository to your local machine:\n\n   ```bash\n   git clone https://github.com/your-username/web_automation.git\n   cd web_automation\n   ```\n\n2. Install the required dependencies:\n\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n### Running Tests Locally\n\nYou can run the tests locally by using the following command:\n\n```bash\npytest --maxfail=1 --disable-warnings -q --html=report.html\n```\n\nThis will execute the tests and generate a `report.html` file that contains the test results.\n\n### GitHub Actions CI/CD\n\nThis project is configured with **GitHub Actions** to automatically run the tests on each push to the `main` branch. The CI/CD workflow is defined in `.github/workflows/ci-cd.yml`. \n\nWhen you push to the `main` branch, GitHub Actions will:\n\n1. Set up the Python environment.\n2. Install dependencies listed in `requirements.txt`.\n3. Run the tests using `pytest`.\n4. Upload the test results as an HTML report.\n\nCheck the **Actions tab** in your GitHub repository to view the workflow results.\n\n### Test Results\n\nTest results will be available in the **Actions tab** of the repository under the latest run. You can download the `pytest-report` artifact which contains the `report.html` for detailed test results.\n\n## Contributing\n\nWe welcome contributions to this project! Here’s how you can help:\n\n### How to Contribute\n\n1. **Fork this repository** to your GitHub account.\n2. **Clone your fork** to your local machine:\n\n   ```bash\n   git clone https://github.com/your-username/web_automation.git\n   ```\n\n3. Create a **new branch** for your changes:\n\n   ```bash\n   git checkout -b feature-branch\n   ```\n\n4. Make your changes and **commit** them:\n\n   ```bash\n   git commit -m \"Describe your changes\"\n   ```\n\n5. **Push** your changes to your fork:\n\n   ```bash\n   git push origin feature-branch\n   ```\n\n6. Open a **pull request** from your feature branch to the `main` branch of the original repository.\n\n### Code Style\n\nPlease adhere to the following guidelines when contributing:\n\n- Follow **PEP 8** standards for Python code.\n- Write clear and concise commit messages.\n- Include comments and documentation where necessary.\n\n## License\n\nThis project is licensed under the **MIT License** - see the [LICENSE](LICENSE) file for details.\n\n## Acknowledgments\n\n- Selenium and Python for providing the tools to automate web testing.\n- GitHub Actions for enabling automated CI/CD workflows.\n- Thanks to all contributors for helping improve this project.\n\n```\n\n### Explanation:\n- **Introduction:** The first section explains the purpose of the project and lists key features.\n- **Getting Started:** This section gives the setup instructions, such as prerequisites, cloning the repo, and installing dependencies.\n- **Running Tests Locally:** Instructions for running the tests locally.\n- **CI/CD Integration:** A section explaining how the GitHub Actions workflow is set up and how it automates testing on every push.\n- **Contributing:** Provides a guide on how to contribute to the project, including forking, creating branches, committing changes, and submitting pull requests.\n- **License:** The project uses the MIT License, so contributors can freely use and distribute it. A link to the full license text is included (assuming it’s in a separate `LICENSE` file).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmd-sikder%2Fselenium-pytest-github-ci-cd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmd-sikder%2Fselenium-pytest-github-ci-cd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmd-sikder%2Fselenium-pytest-github-ci-cd/lists"}