From acbc0ee5cc8618bf11e972ab90d810e1694860b4 Mon Sep 17 00:00:00 2001 From: Jens Langhammer Date: Thu, 29 Jul 2021 19:45:12 +0200 Subject: [PATCH] Revert "tests: re-add firefox e2e tests" This reverts commit a60f6e426f04d83d1c3223e3cd37237cbdf02f63. --- azure-pipelines.yml | 103 ++++---------------------------- tests/e2e/ci.docker-compose.yml | 5 -- tests/e2e/utils.py | 9 +-- 3 files changed, 14 insertions(+), 103 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 0d82f673d..aeb8d7305 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -276,7 +276,7 @@ stages: targetPath: 'output-integration/' artifact: 'coverage-integration' publishLocation: 'pipeline' - - job: coverage_e2e_chrome + - job: coverage_e2e pool: vmImage: 'ubuntu-latest' steps: @@ -318,7 +318,6 @@ stages: displayName: Run full test suite inputs: script: | - export BROWSER=chrome pipenv run python -m scripts.generate_ci_config pipenv run make test-e2e - task: CmdLine@2 @@ -332,91 +331,20 @@ stages: displayName: Prepare unittests and coverage for upload inputs: script: | - mkdir output-e2e-chrome - mv unittest.xml output-e2e-chrome/unittest.xml - mv .coverage output-e2e-chrome/coverage + mkdir output-e2e + mv unittest.xml output-e2e/unittest.xml + mv .coverage output-e2e/coverage - task: PublishPipelineArtifact@1 condition: failed() displayName: Upload screenshots if selenium tests fail inputs: targetPath: 'selenium_screenshots/' - artifact: 'chrome selenium screenshots' + artifact: 'selenium screenshots' publishLocation: 'pipeline' - task: PublishPipelineArtifact@1 inputs: - targetPath: 'output-e2e-chrome/' - artifact: 'coverage-e2e-chrome' - publishLocation: 'pipeline' - - job: coverage_e2e_firefox - pool: - vmImage: 'ubuntu-latest' - steps: - - task: UsePythonVersion@0 - inputs: - versionSpec: '3.9' - - task: NodeTool@0 - inputs: - versionSpec: '16.x' - - task: DockerCompose@0 - displayName: Run services - inputs: - dockerComposeFile: 'scripts/ci.docker-compose.yml' - action: 'Run services' - buildImages: false - - task: CmdLine@2 - inputs: - script: | - sudo apt update - sudo apt install -y libxmlsec1-dev pkg-config - sudo pip install -U wheel pipenv - pipenv install --dev --python python3.9 - - task: DockerCompose@0 - displayName: Run FirefoxDriver - inputs: - dockerComposeFile: 'tests/e2e/ci.docker-compose.yml' - action: 'Run a specific service' - serviceName: 'firefox' - - task: CmdLine@2 - displayName: Build static files for e2e - inputs: - script: | - make gen-web - cd web - cd api && npm i && cd .. - npm i - npm run build - - task: CmdLine@2 - displayName: Run full test suite - inputs: - script: | - export BROWSER=firefox - pipenv run python -m scripts.generate_ci_config - pipenv run make test-e2e - - task: CmdLine@2 - condition: always() - displayName: Cleanup - inputs: - script: | - docker stop $(docker ps -aq) - docker container prune -f - - task: CmdLine@2 - displayName: Prepare unittests and coverage for upload - inputs: - script: | - mkdir output-e2e-firefox - mv unittest.xml output-e2e-firefox/unittest.xml - mv .coverage output-e2e-firefox/coverage - - task: PublishPipelineArtifact@1 - condition: failed() - displayName: Upload screenshots if selenium tests fail - inputs: - targetPath: 'selenium_screenshots/' - artifact: 'firefox selenium screenshots' - publishLocation: 'pipeline' - - task: PublishPipelineArtifact@1 - inputs: - targetPath: 'output-e2e-firefox/' - artifact: 'coverage-e2e-firefox' + targetPath: 'output-e2e/' + artifact: 'coverage-e2e' publishLocation: 'pipeline' - stage: test_combine jobs: @@ -427,13 +355,8 @@ stages: - task: DownloadPipelineArtifact@2 inputs: buildType: 'current' - artifactName: 'coverage-e2e-firefox' - path: "coverage-e2e-firefox/" - - task: DownloadPipelineArtifact@2 - inputs: - buildType: 'current' - artifactName: 'coverage-e2e-chrome' - path: "coverage-e2e-chrome/" + artifactName: 'coverage-e2e' + path: "coverage-e2e/" - task: DownloadPipelineArtifact@2 inputs: buildType: 'current' @@ -454,7 +377,7 @@ stages: sudo apt install -y libxmlsec1-dev pkg-config sudo pip install -U wheel pipenv pipenv install --dev - pipenv run coverage combine coverage-e2e-chrome/coverage coverage-e2e-firefox/coverage coverage-unittest/coverage coverage-integration/coverage + pipenv run coverage combine coverage-e2e/coverage coverage-unittest/coverage coverage-integration/coverage pipenv run coverage xml pipenv run coverage html - task: PublishCodeCoverageResults@1 @@ -467,8 +390,7 @@ stages: inputs: testResultsFormat: 'JUnit' testResultsFiles: | - coverage-e2e-chrome/unittest.xml - coverage-e2e-firefox/unittest.xml + coverage-e2e/unittest.xml coverage-integration/unittest.xml coverage-unittest/unittest.xml mergeTestResults: true @@ -481,8 +403,7 @@ stages: npm install -g @zeus-ci/cli npx zeus job update -b $BUILD_BUILDID -j $BUILD_BUILDNUMBER -r $BUILD_SOURCEVERSION npx zeus upload -b $BUILD_BUILDID -j $BUILD_BUILDNUMBER -t "application/x-cobertura+xml" coverage.xml - npx zeus upload -b $BUILD_BUILDID -j $BUILD_BUILDNUMBER -t "application/x-junit+xml" coverage-e2e-firefox/unittest.xml - npx zeus upload -b $BUILD_BUILDID -j $BUILD_BUILDNUMBER -t "application/x-junit+xml" coverage-e2e-chrome/unittest.xml + npx zeus upload -b $BUILD_BUILDID -j $BUILD_BUILDNUMBER -t "application/x-junit+xml" coverage-e2e/unittest.xml npx zeus upload -b $BUILD_BUILDID -j $BUILD_BUILDNUMBER -t "application/x-junit+xml" coverage-integration/unittest.xml npx zeus upload -b $BUILD_BUILDID -j $BUILD_BUILDNUMBER -t "application/x-junit+xml" coverage-unittest/unittest.xml npx zeus job update --status=passed -b $BUILD_BUILDID -j $BUILD_BUILDNUMBER -r $BUILD_SOURCEVERSION diff --git a/tests/e2e/ci.docker-compose.yml b/tests/e2e/ci.docker-compose.yml index d6295cabb..5be532db3 100644 --- a/tests/e2e/ci.docker-compose.yml +++ b/tests/e2e/ci.docker-compose.yml @@ -6,8 +6,3 @@ services: volumes: - /dev/shm:/dev/shm network_mode: host - firefox: - image: selenium/standalone-firefox:3.141.59-20210713 - volumes: - - /dev/shm:/dev/shm - network_mode: host diff --git a/tests/e2e/utils.py b/tests/e2e/utils.py index d357f6c24..5ace1eab0 100644 --- a/tests/e2e/utils.py +++ b/tests/e2e/utils.py @@ -21,6 +21,7 @@ from selenium.common.exceptions import ( WebDriverException, ) from selenium.webdriver.common.by import By +from selenium.webdriver.common.desired_capabilities import DesiredCapabilities from selenium.webdriver.common.keys import Keys from selenium.webdriver.remote.webdriver import WebDriver from selenium.webdriver.remote.webelement import WebElement @@ -32,8 +33,6 @@ from authentik.core.models import User from authentik.managed.manager import ObjectManager RETRIES = int(environ.get("RETRIES", "5")) -BROWSER_NAME = environ.get("BROWSER", "chrome") - # pylint: disable=invalid-name def USER() -> User: # noqa @@ -89,11 +88,7 @@ class SeleniumTestCase(StaticLiveServerTestCase): def _get_driver(self) -> WebDriver: return webdriver.Remote( command_executor="http://localhost:4444/wd/hub", - desired_capabilities={ - "browserName": BROWSER_NAME, - "version": "", - "platform": "ANY", - } + desired_capabilities=DesiredCapabilities.CHROME, ) def tearDown(self):