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;