diff --git a/.github/workflows/cloud-grid.yml b/.github/workflows/cloud-grid.yml index 90b88c3..3b8cf93 100644 --- a/.github/workflows/cloud-grid.yml +++ b/.github/workflows/cloud-grid.yml @@ -22,9 +22,9 @@ jobs: run_smoke: ${{ steps.check.outputs.run_smoke }} skip_reason: ${{ steps.check.outputs.skip_reason }} steps: - - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6 + - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 with: node-version-file: .nvmrc @@ -74,7 +74,7 @@ jobs: - name: Upload credential skip evidence if: steps.check.outputs.run_smoke == 'false' - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: evidence-cloud-grid-skipped path: target/portfolio-evidence/evidence-v3.json @@ -90,13 +90,13 @@ jobs: BROWSERSTACK_ACCESS_KEY: ${{ secrets.BROWSERSTACK_ACCESS_KEY }} APP_PASSWORD: ${{ secrets.APP_PASSWORD }} steps: - - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6 + - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 with: node-version-file: .nvmrc - - uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5 + - uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0 with: java-version: '21' distribution: temurin @@ -148,7 +148,7 @@ jobs: - name: Upload cloud-grid evidence if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: evidence-cloud-grid-CHROME path: target/portfolio-evidence/evidence-v3.json diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index b8b753b..1d99b18 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -17,7 +17,7 @@ jobs: timeout-minutes: 10 steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Validate local Markdown links shell: bash diff --git a/.github/workflows/secret-scan.yml b/.github/workflows/secret-scan.yml index 409e957..3baaa65 100644 --- a/.github/workflows/secret-scan.yml +++ b/.github/workflows/secret-scan.yml @@ -14,7 +14,7 @@ jobs: timeout-minutes: 10 steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Scan for high-confidence secret patterns shell: bash diff --git a/.github/workflows/shared-reference-app-ui.yml b/.github/workflows/shared-reference-app-ui.yml index 5856286..e528f39 100644 --- a/.github/workflows/shared-reference-app-ui.yml +++ b/.github/workflows/shared-reference-app-ui.yml @@ -36,15 +36,15 @@ jobs: EVIDENCE_CLASS: controlled steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Set up the repository-pinned Node runtime for evidence validation - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6 + uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 with: node-version-file: .nvmrc - name: Set up JDK 21 - uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5 + uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0 with: java-version: '21' distribution: temurin @@ -136,7 +136,7 @@ jobs: - name: Preserve logs, native reports, and evidence if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: selenium-shared-app-evidence-${{ github.run_attempt }} path: | diff --git a/.github/workflows/ui-tests.yml b/.github/workflows/ui-tests.yml index 8c2fc65..6acf89f 100644 --- a/.github/workflows/ui-tests.yml +++ b/.github/workflows/ui-tests.yml @@ -31,10 +31,10 @@ jobs: timeout-minutes: 10 steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Set up unsupported JDK 17 for the rejection control - uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5 + uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0 with: java-version: '17' distribution: temurin @@ -56,10 +56,10 @@ jobs: timeout-minutes: 25 steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Set up JDK 21 without Maven caching - uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5 + uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0 with: java-version: '21' distribution: temurin @@ -110,7 +110,7 @@ jobs: - name: Preserve cold-bootstrap log and native Surefire reports if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: selenium-fresh-clone-bootstrap path: | @@ -125,7 +125,7 @@ jobs: timeout-minutes: 10 steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Dependency Review uses: actions/dependency-review-action@a1d282b36b6f3519aa1f3fc636f609c47dddb294 # v5 @@ -135,14 +135,14 @@ jobs: timeout-minutes: 20 steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6 + - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 with: node-version-file: .nvmrc - name: Set up JDK 21 - uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5 + uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0 with: java-version: '21' distribution: temurin @@ -264,7 +264,7 @@ jobs: - name: Upload framework quality evidence if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: evidence-framework-quality path: target/portfolio-evidence/evidence-v3.json @@ -272,7 +272,7 @@ jobs: - name: Upload framework native XML summary if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: surefire-reports-framework-quality path: | @@ -297,10 +297,10 @@ jobs: timeout-minutes: 30 steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Set up JDK 21 - uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5 + uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0 with: java-version: '21' distribution: temurin @@ -319,7 +319,7 @@ jobs: ./mvnw versions:display-plugin-updates -Dmaven.version.rules=file://$PWD/config/versions/rules.xml > target/dependency-governance/plugin-updates.txt - name: Upload dependency update reports - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: dependency-update-reports path: target/dependency-governance/*.txt @@ -328,7 +328,7 @@ jobs: run: ./mvnw -Psbom -DskipTests verify - name: Upload SBOM - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: cyclonedx-sbom path: target/*bom*.* @@ -339,14 +339,14 @@ jobs: timeout-minutes: 10 steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6 + - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 with: node-version-file: .nvmrc - name: Set up JDK 21 - uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5 + uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0 with: java-version: '21' distribution: temurin @@ -401,7 +401,7 @@ jobs: - name: Upload negative-control evidence if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: evidence-negative-control path: target/portfolio-evidence/evidence-v3.json @@ -409,7 +409,7 @@ jobs: - name: Upload negative-control native XML summary if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: surefire-reports-negative-control path: target/surefire-reports/TEST-*.xml @@ -426,14 +426,14 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6 + - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 with: node-version-file: .nvmrc - name: Set up JDK 21 - uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5 + uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0 with: java-version: '21' distribution: temurin @@ -519,7 +519,7 @@ jobs: - name: Upload browser-matrix evidence if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: evidence-ui-${{ matrix.browser }} path: target/portfolio-evidence/evidence-v3.json @@ -527,35 +527,35 @@ jobs: - name: Upload Allure results if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: allure-results-${{ matrix.browser }} path: target/allure-results/ - name: Upload generated Allure report if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: allure-report-${{ matrix.browser }} path: target/allure-report/ - name: Upload Surefire reports if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: surefire-reports-${{ matrix.browser }} path: target/surefire-reports/ - name: Upload execution logs if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: execution-logs-${{ matrix.browser }} path: target/logs/ - name: Upload runtime metrics if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: portfolio-metrics-${{ matrix.browser }} path: target/portfolio-metrics-v1.json @@ -584,14 +584,14 @@ jobs: timeout-minutes: 25 steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6 + - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 with: node-version-file: .nvmrc - name: Set up JDK 21 - uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5 + uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0 with: java-version: '21' distribution: temurin @@ -655,7 +655,7 @@ jobs: - name: Upload accessibility evidence if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: evidence-accessibility-CHROME path: target/portfolio-evidence/evidence-v3.json @@ -663,28 +663,28 @@ jobs: - name: Upload Allure results if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: allure-results-accessibility path: target/allure-results/ - name: Upload generated Allure report if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: allure-report-accessibility path: target/allure-report/ - name: Upload Surefire reports if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: surefire-reports-accessibility path: target/surefire-reports/ - name: Upload execution logs if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: execution-logs-accessibility path: target/logs/ @@ -711,10 +711,10 @@ jobs: timeout-minutes: 20 steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Set up JDK 21 - uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5 + uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0 with: java-version: '21' distribution: temurin @@ -748,7 +748,7 @@ jobs: - name: Upload Grid capacity sample if: always() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 + uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: selenium-grid-capacity-sample path: target/grid-capacity-sample.json @@ -813,10 +813,10 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Set up JDK 21 - uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5 + uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0 with: java-version: '21' distribution: temurin diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties index 2dc39d1..3253704 100644 --- a/.mvn/wrapper/maven-wrapper.properties +++ b/.mvn/wrapper/maven-wrapper.properties @@ -14,6 +14,6 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. -wrapperVersion=3.3.2 +wrapperVersion=3.3.4 distributionType=only-script distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.15/apache-maven-3.9.15-bin.zip diff --git a/pom.xml b/pom.xml index 7971603..eab39f5 100644 --- a/pom.xml +++ b/pom.xml @@ -21,11 +21,11 @@ 2.26.1 1.18.48 1.9.25.1 - 4.10.2 + 4.13.0 2.0.20 3.28.0 3.11.0 - 4.9.8.3 + 4.10.5.0 https://github.com/qa-test-automation-frameworks/selenium-testng-java-framework/issues/{} testng.xml @@ -199,7 +199,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.15.0 + 3.16.0 org.apache.maven.plugins @@ -426,7 +426,7 @@ com.diffplug.spotless spotless-maven-plugin - 3.6.0 + 3.10.4 spotless-verify @@ -509,7 +509,7 @@ org.cyclonedx cyclonedx-maven-plugin - 2.9.1 + 2.9.3 verify diff --git a/src/test/java/io/github/selenium/saucedemo/framework/driver/GridCapacityExperimentTests.java b/src/test/java/io/github/selenium/saucedemo/framework/driver/GridCapacityExperimentTests.java index b324f3e..dce0ca9 100644 --- a/src/test/java/io/github/selenium/saucedemo/framework/driver/GridCapacityExperimentTests.java +++ b/src/test/java/io/github/selenium/saucedemo/framework/driver/GridCapacityExperimentTests.java @@ -13,6 +13,7 @@ import java.util.ArrayList; import java.util.HexFormat; import java.util.List; +import java.util.Objects; import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -112,7 +113,10 @@ private static SessionSample openSession( driver.get("data:text/html,grid-capacity-probe"); assertThat(driver.getTitle()).isEqualTo("grid-capacity-probe"); String browserVersion = driver.getCapabilities().getBrowserVersion(); - String sessionId = driver.getSessionId().toString(); + String sessionId = + Objects.requireNonNull( + driver.getSessionId(), "Grid session ID must exist after session creation") + .toString(); String sessionIdSha256 = sessionIdDigest(sessionId); driver.quit(); driver = null;