Skip to content

Commit 2445805

Browse files
authored
Update to Selenium 4.34.0 +semver:feature (#152)
* Update to Selenium 4.34.0 +semver:feature Sonatype deploy: publish with central-publishing-maven-plugin, use maven versions plugin * Azure DevOps pipeline: Restore sonarCloud analysis and update maven tasks * update ADO test run settings.local.json * remove cookie consent for ManyToolsForm, restore normal pageLoadStrategy
1 parent f04443e commit 2445805

File tree

14 files changed

+99
-80
lines changed

14 files changed

+99
-80
lines changed

.github/workflows/release-maven-central.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
with:
2121
java-version: "11"
2222
distribution: "adopt"
23-
server-id: ossrh
23+
server-id: central
2424
server-username: MVN_CENTRAL_USERNAME
2525
server-password: MVN_CENTRAL_PASSWORD
2626
gpg-private-key: ${{ secrets.GPG_SECRET_KEY }}
@@ -54,7 +54,12 @@ jobs:
5454

5555
- name: Step 6 - Publish package
5656
run: |
57-
mvn -Dmaven.test.skip=true -P release -Drevision=${{ steps.gitversion.outputs.semVer }} deploy
57+
mvn -B --no-transfer-progress \
58+
versions:set \
59+
-DnewVersion=${{ steps.gitversion.outputs.semVer }} \
60+
-DgenerateBackupPoms=false \
61+
-DprocessAllModules
62+
mvn -B --no-transfer-progress -Dmaven.test.skip=true deploy
5863
env:
5964
MVN_CENTRAL_USERNAME: ${{ secrets.OSSRH_USERNAME }}
6065
MVN_CENTRAL_PASSWORD: ${{ secrets.OSSRH_TOKEN }}

azure-pipelines.yml

Lines changed: 40 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -9,32 +9,55 @@ jobs:
99
displayName: Analyse code with SonarQube
1010

1111
steps:
12+
- task: SonarCloudPrepare@3
13+
displayName: 'Prepare SonarCloud analysis'
14+
inputs:
15+
SonarCloud: 'SonarCloud'
16+
organization: 'aqualityautomation'
17+
scannerMode: 'CLI'
18+
configMode: 'file'
19+
extraProperties: 'sonar.coverage.exclusions=**/**'
1220

13-
- task: Maven@3
14-
displayName: 'Build project'
15-
inputs:
16-
mavenPomFile: 'pom.xml'
17-
mavenOptions: '-Xmx3072m'
18-
javaHomeOption: 'JDKVersion'
19-
jdkVersionOption: '11'
20-
jdkArchitectureOption: 'x64'
21-
publishJUnitResults: true
22-
testResultsFiles: '**/surefire-reports/TEST-*.xml'
23-
goals: 'clean'
21+
- task: Maven@4
22+
displayName: 'Build project'
23+
inputs:
24+
mavenPomFile: 'pom.xml'
25+
goals: 'clean'
26+
publishJUnitResults: true
27+
testResultsFiles: '**/surefire-reports/TEST-*.xml'
28+
javaHomeOption: 'JDKVersion'
29+
jdkVersionOption: '1.11'
30+
mavenVersionOption: 'Default'
31+
mavenAuthenticateFeed: false
32+
effectivePomSkip: false
33+
sonarQubeRunAnalysis: false
34+
35+
- task: SonarCloudAnalyze@3
36+
inputs:
37+
jdkversion: 'JAVA_HOME_21_X64'
38+
displayName: 'Run SonarCloud code analysis'
39+
continueOnError: true
40+
41+
- task: SonarCloudPublish@3
42+
displayName: 'Publish SonarCloud quality gate results'
43+
inputs:
44+
pollingTimeoutSec: '300'
2445

2546
- job: tests
2647
displayName: Run tests
2748

2849
steps:
2950

30-
- task: Maven@3
51+
- task: Maven@4
3152
displayName: 'Run tests'
3253
inputs:
3354
mavenPomFile: 'pom.xml'
34-
mavenOptions: '-Xmx3072m'
35-
javaHomeOption: 'JDKVersion'
36-
jdkVersionOption: '11'
37-
jdkArchitectureOption: 'x64'
55+
goals: 'clean test -Dprofile=local'
3856
publishJUnitResults: true
3957
testResultsFiles: '**/surefire-reports/TEST-*.xml'
40-
goals: 'test -Dprofile=local'
58+
javaHomeOption: 'JDKVersion'
59+
jdkVersionOption: '1.11'
60+
mavenVersionOption: 'Default'
61+
mavenAuthenticateFeed: false
62+
effectivePomSkip: false
63+
sonarQubeRunAnalysis: false

pom.xml

Lines changed: 21 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>com.github.aquality-automation</groupId>
88
<artifactId>aquality-selenium</artifactId>
9-
<version>${revision}</version>
9+
<version>4.0.0</version>
1010
<packaging>jar</packaging>
1111
<name>Aquality Selenium</name>
1212
<description>Library around Selenium WebDriver</description>
@@ -15,20 +15,8 @@
1515
<properties>
1616
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
1717
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
18-
<revision>4.0.0-SNAPSHOT</revision>
1918
</properties>
2019

21-
<distributionManagement>
22-
<snapshotRepository>
23-
<id>ossrh</id>
24-
<url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
25-
</snapshotRepository>
26-
<repository>
27-
<id>ossrh</id>
28-
<url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
29-
</repository>
30-
</distributionManagement>
31-
3220
<scm>
3321
<connection>scm:git:[email protected]:aquality-automation/aquality-selenium-java.git</connection>
3422
<developerConnection>scm:git:[email protected]:aquality-automation/aquality-selenium-java.git</developerConnection>
@@ -82,12 +70,12 @@
8270
<dependency>
8371
<groupId>com.github.aquality-automation</groupId>
8472
<artifactId>aquality-selenium-core</artifactId>
85-
<version>4.6.0</version>
73+
<version>4.7.0</version>
8674
</dependency>
8775
<dependency>
8876
<groupId>org.apache.commons</groupId>
8977
<artifactId>commons-lang3</artifactId>
90-
<version>3.17.0</version>
78+
<version>3.18.0</version>
9179
</dependency>
9280
<dependency>
9381
<groupId>com.fasterxml.jackson.core</groupId>
@@ -97,7 +85,7 @@
9785
<dependency>
9886
<groupId>org.slf4j</groupId>
9987
<artifactId>slf4j-simple</artifactId>
100-
<version>2.0.16</version>
88+
<version>2.0.17</version>
10189
<scope>test</scope>
10290
</dependency>
10391
<dependency>
@@ -119,7 +107,7 @@
119107
<plugin>
120108
<groupId>org.apache.maven.plugins</groupId>
121109
<artifactId>maven-compiler-plugin</artifactId>
122-
<version>3.13.0</version>
110+
<version>3.14.0</version>
123111
<configuration>
124112
<source>11</source>
125113
<target>11</target>
@@ -128,7 +116,7 @@
128116
<plugin>
129117
<groupId>org.jacoco</groupId>
130118
<artifactId>jacoco-maven-plugin</artifactId>
131-
<version>0.8.12</version>
119+
<version>0.8.13</version>
132120
<executions>
133121
<execution>
134122
<id>pre-unit-test</id>
@@ -156,7 +144,7 @@
156144
<plugin>
157145
<groupId>org.apache.maven.plugins</groupId>
158146
<artifactId>maven-surefire-plugin</artifactId>
159-
<version>3.5.2</version>
147+
<version>3.5.3</version>
160148
<configuration>
161149
<argLine>${surefireArgLine} -Dfile.encoding=UTF-8</argLine>
162150
<reuseForks>false</reuseForks>
@@ -168,6 +156,7 @@
168156
<plugin>
169157
<groupId>org.apache.maven.plugins</groupId>
170158
<artifactId>maven-assembly-plugin</artifactId>
159+
<version>3.7.1</version>
171160
<executions>
172161
<execution>
173162
<goals>
@@ -198,7 +187,7 @@
198187
<plugin>
199188
<groupId>org.apache.maven.plugins</groupId>
200189
<artifactId>maven-javadoc-plugin</artifactId>
201-
<version>3.11.1</version>
190+
<version>3.11.2</version>
202191
<configuration>
203192
<source>11</source>
204193
</configuration>
@@ -214,7 +203,7 @@
214203
<plugin>
215204
<groupId>org.apache.maven.plugins</groupId>
216205
<artifactId>maven-gpg-plugin</artifactId>
217-
<version>3.2.7</version>
206+
<version>3.2.8</version>
218207
<executions>
219208
<execution>
220209
<id>sign-artifacts</id>
@@ -232,16 +221,21 @@
232221
</executions>
233222
</plugin>
234223
<plugin>
235-
<groupId>org.sonatype.plugins</groupId>
236-
<artifactId>nexus-staging-maven-plugin</artifactId>
237-
<version>1.7.0</version>
224+
<groupId>org.sonatype.central</groupId>
225+
<artifactId>central-publishing-maven-plugin</artifactId>
226+
<version>0.8.0</version>
238227
<extensions>true</extensions>
239228
<configuration>
240-
<serverId>ossrh</serverId>
241-
<nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>
242-
<autoReleaseAfterClose>true</autoReleaseAfterClose>
229+
<publishingServerId>central</publishingServerId>
230+
<autoPublish>true</autoPublish>
231+
<waitUntil>published</waitUntil>
243232
</configuration>
244233
</plugin>
234+
<plugin>
235+
<groupId>org.codehaus.mojo</groupId>
236+
<artifactId>versions-maven-plugin</artifactId>
237+
<version>2.18.0</version>
238+
</plugin>
245239
</plugins>
246240
</build>
247241
</project>

src/main/java/aquality/selenium/browser/devtools/DevToolsHandling.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
import org.openqa.selenium.devtools.DevTools;
1010
import org.openqa.selenium.devtools.Event;
1111
import org.openqa.selenium.devtools.HasDevTools;
12-
import org.openqa.selenium.devtools.v137.performance.Performance;
13-
import org.openqa.selenium.devtools.v137.performance.model.Metric;
12+
import org.openqa.selenium.devtools.v138.performance.Performance;
13+
import org.openqa.selenium.devtools.v138.performance.model.Metric;
1414

1515
import java.util.List;
1616
import java.util.Map;

src/main/java/aquality/selenium/browser/devtools/EmulationHandling.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22

33
import org.apache.commons.lang3.StringUtils;
44
import org.openqa.selenium.devtools.Command;
5-
import org.openqa.selenium.devtools.v137.dom.model.RGBA;
6-
import org.openqa.selenium.devtools.v137.emulation.Emulation;
7-
import org.openqa.selenium.devtools.v137.emulation.model.MediaFeature;
8-
import org.openqa.selenium.devtools.v137.emulation.model.ScreenOrientation;
5+
import org.openqa.selenium.devtools.v138.dom.model.RGBA;
6+
import org.openqa.selenium.devtools.v138.emulation.Emulation;
7+
import org.openqa.selenium.devtools.v138.emulation.model.MediaFeature;
8+
import org.openqa.selenium.devtools.v138.emulation.model.ScreenOrientation;
99

1010
import java.util.Collections;
1111
import java.util.List;

src/main/java/aquality/selenium/browser/devtools/JavaScriptHandling.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@
1212
import org.openqa.selenium.devtools.idealized.Javascript;
1313
import org.openqa.selenium.devtools.idealized.ScriptId;
1414
import org.openqa.selenium.devtools.idealized.target.model.SessionID;
15-
import org.openqa.selenium.devtools.v137.page.Page;
16-
import org.openqa.selenium.devtools.v137.page.model.ScriptIdentifier;
17-
import org.openqa.selenium.devtools.v137.runtime.Runtime;
15+
import org.openqa.selenium.devtools.v138.page.Page;
16+
import org.openqa.selenium.devtools.v138.page.model.ScriptIdentifier;
17+
import org.openqa.selenium.devtools.v138.runtime.Runtime;
1818
import org.openqa.selenium.logging.EventType;
1919
import org.openqa.selenium.logging.HasLogEvents;
2020
import org.openqa.selenium.remote.Augmenter;

src/main/java/aquality/selenium/browser/devtools/NetworkHandling.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import org.openqa.selenium.UsernameAndPassword;
99
import org.openqa.selenium.devtools.NetworkInterceptor;
1010
import org.openqa.selenium.devtools.idealized.Network;
11-
import org.openqa.selenium.devtools.v137.network.model.*;
11+
import org.openqa.selenium.devtools.v138.network.model.*;
1212
import org.openqa.selenium.remote.http.*;
1313

1414
import java.net.URI;
@@ -22,11 +22,11 @@
2222

2323
import static aquality.selenium.browser.AqualityServices.getBrowser;
2424
import static aquality.selenium.logging.LocalizedLoggerUtility.logByLevel;
25-
import static org.openqa.selenium.devtools.v137.network.Network.*;
25+
import static org.openqa.selenium.devtools.v138.network.Network.*;
2626

2727
/**
2828
* DevTools commands for version-independent network interception.
29-
* For more information, see {@link org.openqa.selenium.devtools.v137.network.Network} and {@link Network}.
29+
* For more information, see {@link org.openqa.selenium.devtools.v138.network.Network} and {@link Network}.
3030
*/
3131
public class NetworkHandling {
3232
public static final String LOC_NETWORK_INTERCEPTOR_START = "loc.browser.network.interceptor.start";
@@ -129,7 +129,7 @@ public void interceptTrafficWith(Filter filter) {
129129
*/
130130
public void addRequestListener(Consumer<RequestWillBeSent> listener) {
131131
logger.info("loc.browser.network.event.requestsent.add");
132-
tools.sendCommand(enable(Optional.empty(), Optional.empty(), Optional.empty()));
132+
tools.sendCommand(enable(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()));
133133
tools.addListener(requestWillBeSent(), listener);
134134
}
135135

@@ -139,7 +139,7 @@ public void addRequestListener(Consumer<RequestWillBeSent> listener) {
139139
*/
140140
public void addResponseListener(Consumer<ResponseReceived> listener) {
141141
logger.info("loc.browser.network.event.responsereceived.add");
142-
tools.sendCommand(enable(Optional.empty(), Optional.empty(), Optional.empty()));
142+
tools.sendCommand(enable(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()));
143143
tools.addListener(responseReceived(), listener);
144144
}
145145

@@ -179,7 +179,7 @@ private Consumer<RequestWillBeSent> getRequestLogger(HttpExchangeLoggingOptions
179179
if (loggingOptions.getRequestPostData().isEnabled() && request.getHasPostData().orElse(false)) {
180180
logByLevel(loggingOptions.getRequestPostData().getLogLevel(),
181181
"loc.browser.network.event.requestsent.log.data",
182-
request.getPostData().orElse(null));
182+
request.getPostDataEntries().orElse(null));
183183
}
184184
};
185185
}
@@ -199,7 +199,7 @@ private Consumer<ResponseReceived> getResponseLogger(HttpExchangeLoggingOptions
199199
formatHeaders(response.getHeaders()));
200200
}
201201
if (loggingOptions.getResponseBody().isEnabled()) {
202-
String responseBody = tools.sendCommand(org.openqa.selenium.devtools.v137.network.Network.getResponseBody(requestId)).getBody();
202+
String responseBody = tools.sendCommand(org.openqa.selenium.devtools.v138.network.Network.getResponseBody(requestId)).getBody();
203203
if (StringUtils.isNotEmpty(responseBody)) {
204204
logByLevel(loggingOptions.getResponseBody().getLogLevel(),
205205
"loc.browser.network.event.responsereceived.log.body",
@@ -322,7 +322,7 @@ public void clearNetworkInterceptor() {
322322
* @param uploadThroughput Maximal aggregated upload throughput (bytes/sec). -1 disables upload throttling.
323323
*/
324324
public void emulateConditions(Boolean offline, Number latency, Number downloadThroughput, Number uploadThroughput) {
325-
tools.sendCommand(enable(Optional.empty(), Optional.empty(), Optional.empty()));
325+
tools.sendCommand(enable(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()));
326326
tools.sendCommand(emulateNetworkConditions(offline, latency, downloadThroughput, uploadThroughput, Optional.empty(),
327327
Optional.empty(), Optional.empty(), Optional.empty()));
328328
}
@@ -338,7 +338,7 @@ public void emulateConditions(Boolean offline, Number latency, Number downloadTh
338338
* "wifi", "wimax", "other".
339339
*/
340340
public void emulateConditions(Boolean offline, Number latency, Number downloadThroughput, Number uploadThroughput, String connectionType) {
341-
tools.sendCommand(enable(Optional.empty(), Optional.empty(), Optional.empty()));
341+
tools.sendCommand(enable(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()));
342342
tools.sendCommand(emulateNetworkConditions(offline, latency, downloadThroughput, uploadThroughput,
343343
Optional.of(ConnectionType.fromString(connectionType)), Optional.empty(), Optional.empty(), Optional.empty()));
344344
}

src/test/java/manytools/ManyToolsForm.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,6 @@ protected ManyToolsForm(String name) {
2525
public T open() {
2626
AqualityServices.get(IActionRetrier.class).doWithRetry(() -> {
2727
AqualityServices.getBrowser().goTo(BASE_URL + getUrlPart());
28-
AqualityServices.getBrowser().waitForPageToLoad();
29-
if (btnAgree.state().isDisplayed())
30-
{
31-
btnAgree.click();
32-
btnAgree.state().waitForNotDisplayed();
33-
}
3428
}, Collections.singletonList(TimeoutException.class));
3529
return (T) this;
3630
}

src/test/java/tests/usecases/devtools/DeviceEmulationTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
import aquality.selenium.browser.AqualityServices;
44
import aquality.selenium.browser.devtools.EmulationHandling;
55
import com.google.common.collect.ImmutableMap;
6-
import org.openqa.selenium.devtools.v137.emulation.Emulation;
7-
import org.openqa.selenium.devtools.v137.emulation.model.DisplayFeature;
6+
import org.openqa.selenium.devtools.v138.emulation.Emulation;
7+
import org.openqa.selenium.devtools.v138.emulation.model.DisplayFeature;
88
import org.testng.Assert;
99
import org.testng.annotations.BeforeMethod;
1010
import org.testng.annotations.Test;

0 commit comments

Comments
 (0)