81 lines
2.9 KiB
YAML
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
|
|
|
|
|
|
|
|
|