Playwright_Pytest_BDD_Demo/.github/workflows/python-playwright-pytest-bd...

81 lines
2.9 KiB
YAML

# This is a basic workflow to help you get started with Actions
name: playwright pytest bdd demo CI
# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the "master" branch
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
schedule:
- cron: '0 0,4,12 * * *'
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
test:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.8'
allow-prereleases: true
cache: 'pipenv'
- name: Install pipenv
run: pip install pipenv
- name: Install dependencies
run: |
pipenv install wheel
pipenv install
- name: Ensure browsers are installed
run: pipenv run python -m playwright install
- name: Run test cases
run: pipenv run python run.py
- uses: actions/upload-artifact@master
with:
name: Test-allure-report
path: report # path to store the allure report
retention-days: 20
- name: Get Allure history # Step to retrieve Allure history
uses: actions/checkout@v4
if: always() # Execute even if previous steps fail
continue-on-error: true # Continue execution even if the step fails
with:
ref: gh-pages # Specify the branch to retrieve Allure history from
path: gh-pages # Set the destination path for Allure history
- name: Generate allure report action # Step to generate Allure report
uses: simple-elf/allure-report-action@master
if: always() # Execute even if previous steps fail
id: allure-report
with:
allure_results: temp # path to store the allure results
allure_history: allure-history # Specify the directory to store Allure history
allure_report: allure-report
keep_reports: 20 # Specify the number of previous reports to keep
# - name: Deploy Allure report to GitHub Pages # Step to deploy Allure report to GitHub Pages
# if: always() # Execute even if previous steps fail
# uses: peaceiris/actions-gh-pages@v3
# with:
# github_token: ${{ secrets.GITHUB_TOKEN }} # Provide the GitHub token for authentication
# publish_branch: gh-pages # Specify the branch to publish the report to
# publish_dir: allure-history # Specify the directory containing the report