diff --git a/.github/workflows/python-package-legacy.yml b/.github/workflows/python-package-legacy.yml new file mode 100644 index 00000000000..3c378c7fe0d --- /dev/null +++ b/.github/workflows/python-package-legacy.yml @@ -0,0 +1,93 @@ +name: CI build for Legacy Python + +on: + pull_request: + branches: + push: + branches: + - master + workflow_dispatch: + branches: + +jobs: + build: + + env: + PY_COLORS: "1" + runs-on: ubuntu-20.04 + strategy: + fail-fast: false + max-parallel: 6 + matrix: + python-version: ["3.6"] + + steps: + - uses: actions/checkout@v3 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: | + python -m pip install --upgrade pip + python -m pip install --upgrade wheel + pip install -r requirements.txt + - name: Install SeleniumBase + run: | + python setup.py install + - name: Lint with flake8 + run: | + pip install flake8 + # Stop the build if there are flake8 issues + flake8 . --count --show-source --statistics --exclude=temp + - name: Install Chrome + run: | + sudo apt install google-chrome-stable + - name: Check the console scripts interface + run: | + seleniumbase + sbase + - name: Install chromedriver + run: | + seleniumbase install chromedriver + - name: Make sure pytest is working + run: | + echo "def test_1(): pass" > nothing.py + pytest nothing.py + - name: Make sure nosetests is working + run: | + echo "def test_2(): pass" > nothing2.py + nosetests nothing2.py + - name: Run pytest examples/unit_tests/verify_framework.py --browser=chrome --headless + run: | + pytest examples/unit_tests/verify_framework.py --browser=chrome --headless -v -s --junit-xml=junit/test-results.xml + - name: Run pytest examples/boilerplate_test.py --browser=chrome --headless + run: | + pytest examples/boilerplates/boilerplate_test.py --browser=chrome --headless -v -s --junit-xml=junit/test-results.xml + - name: Run pytest examples/test_demo_site.py --browser=chrome --xvfb + run: | + pytest examples/test_demo_site.py --browser=chrome --xvfb -v -s --junit-xml=junit/test-results.xml + - name: Run pytest examples/test_iframes.py --browser=chrome --xvfb --rs --crumbs + run: | + pytest examples/test_iframes.py --browser=chrome --xvfb --rs --crumbs -v -s --junit-xml=junit/test-results.xml + - name: Run pytest examples/test_mfa_login.py --browser=chrome --xvfb + run: | + pytest examples/test_mfa_login.py --browser=chrome --xvfb -v -s --junit-xml=junit/test-results.xml + - name: Run pytest examples/test_iframes.py --browser=chrome --xvfb --rs + run: | + pytest examples/test_iframes.py --browser=chrome --xvfb --rs -v -s --junit-xml=junit/test-results.xml + - name: Run pytest examples/test_window_switching.py --browser=chrome --headless + run: | + pytest examples/test_window_switching.py --browser=chrome --headless -v -s --junit-xml=junit/test-results.xml + - name: Run pytest examples/my_first_test.py --browser=chrome --headless + run: | + pytest examples/my_first_test.py --browser=chrome --headless -v -s --junit-xml=junit/test-results.xml + - name: Run pytest examples/test_inspect_html.py --browser=chrome --headless + run: | + pytest examples/test_inspect_html.py --browser=chrome --headless -v -s --junit-xml=junit/test-results.xml + - name: Run behave examples/behave_bdd/features/calculator.feature -D rs -D crumbs -D xvfb + run: | + behave examples/behave_bdd/features/calculator.feature -D rs -D crumbs -D xvfb -T -k + - name: Run behave examples/behave_bdd/features/realworld.feature -D rs -D crumbs -D xvfb + run: | + behave examples/behave_bdd/features/realworld.feature -D rs -D crumbs -D xvfb -T -k diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index c00d00d71e7..3ea1333f838 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -14,12 +14,12 @@ jobs: env: PY_COLORS: "1" - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 strategy: fail-fast: false max-parallel: 6 matrix: - python-version: ["3.6", "3.7", "3.8", "3.9", "3.10", "3.11"] + python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"] steps: - uses: actions/checkout@v3