Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit c2d792a

Browse files
authored
Replace card blocks with separate code blocks (SeleniumHQ#1425)
* Replace card blocks with separate code blocks Currently cards that are used in this page does not support syntax highlights and are extremely hard to read. Using separate blocks of code add syntax highlights and make provided code snippets readable. * Fix cardpane in upgrade_to_selenium_4.en.md * Fix cardpane in upgrade_to_selenium_4.ja.md * Fix cardpane in upgrade_to_selenium_4.pt-br.md * Fix cardpane in upgrade_to_selenium_4.zh-cn.md [deploy site]
1 parent d585f18 commit c2d792a

File tree

4 files changed

+106
-250
lines changed

4 files changed

+106
-250
lines changed

website_and_docs/content/documentation/webdriver/getting_started/upgrade_to_selenium_4.en.md

Lines changed: 28 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -161,8 +161,7 @@ as they were meant for internal use only. The following code samples explain thi
161161
Finding a single element with `findElement*`
162162

163163
{{< cardpane >}}
164-
{{< card header="Before" >}}
165-
```java
164+
{{< card code=true header="Before" lang="Java" >}}
166165
driver.findElementByClassName("className");
167166
driver.findElementByCssSelector(".className");
168167
driver.findElementById("elementId");
@@ -171,10 +170,8 @@ driver.findElementByName("elementName");
171170
driver.findElementByPartialLinkText("partialText");
172171
driver.findElementByTagName("elementTagName");
173172
driver.findElementByXPath("xPath");
174-
```
175173
{{< /card >}}
176-
{{< card header="After" >}}
177-
```java
174+
{{< card code=true header="After" lang="Java" >}}
178175
driver.findElement(By.className("className"));
179176
driver.findElement(By.cssSelector(".className"));
180177
driver.findElement(By.id("elementId"));
@@ -183,16 +180,14 @@ driver.findElement(By.name("elementName"));
183180
driver.findElement(By.partialLinkText("partialText"));
184181
driver.findElement(By.tagName("elementTagName"));
185182
driver.findElement(By.xpath("xPath"));
186-
```
187183
{{< /card >}}
188184
{{< /cardpane >}}
189185

190186

191187
Finding a multiple elements with `findElements*`
192188

193189
{{< cardpane >}}
194-
{{< card header="Before" >}}
195-
```java
190+
{{< card code=true header="Before" lang="Java" >}}
196191
driver.findElementsByClassName("className");
197192
driver.findElementsByCssSelector(".className");
198193
driver.findElementsById("elementId");
@@ -201,10 +196,8 @@ driver.findElementsByName("elementName");
201196
driver.findElementsByPartialLinkText("partialText");
202197
driver.findElementsByTagName("elementTagName");
203198
driver.findElementsByXPath("xPath");
204-
```
205199
{{< /card >}}
206-
{{< card header="After" >}}
207-
```java
200+
{{< card code=true header="After" lang="Java" >}}
208201
driver.findElements(By.className("className"));
209202
driver.findElements(By.cssSelector(".className"));
210203
driver.findElements(By.id("elementId"));
@@ -213,7 +206,6 @@ driver.findElements(By.name("elementName"));
213206
driver.findElements(By.partialLinkText("partialText"));
214207
driver.findElements(By.tagName("elementTagName"));
215208
driver.findElements(By.xpath("xPath"));
216-
```
217209
{{< /card >}}
218210
{{< /cardpane >}}
219211

@@ -231,8 +223,7 @@ most common ones for Java, which are [Maven](https://maven.apache.org/) and
231223
#### Maven
232224

233225
{{< cardpane >}}
234-
{{< card header="Before" >}}
235-
```xml
226+
{{< card code=true header="Before" lang="xml" >}}
236227
<dependencies>
237228
<!-- more dependencies ... -->
238229
<dependency>
@@ -242,10 +233,8 @@ most common ones for Java, which are [Maven](https://maven.apache.org/) and
242233
</dependency>
243234
<!-- more dependencies ... -->
244235
</dependencies>
245-
```
246236
{{< /card >}}
247-
{{< card header="After" >}}
248-
```xml
237+
{{< card code=true header="After" lang="xml" >}}
249238
<dependencies>
250239
<!-- more dependencies ... -->
251240
<dependency>
@@ -255,7 +244,6 @@ most common ones for Java, which are [Maven](https://maven.apache.org/) and
255244
</dependency>
256245
<!-- more dependencies ... -->
257246
</dependencies>
258-
```
259247
{{< /card >}}
260248
{{< /cardpane >}}
261249

@@ -265,8 +253,7 @@ After making the change, you could execute `mvn clean compile` on the same direc
265253
#### Gradle
266254

267255
{{< cardpane >}}
268-
{{< card header="Before" >}}
269-
```jsonpath
256+
{{< card code=true header="Before" lang="jsonpath" >}}
270257
plugins {
271258
id 'java'
272259
}
@@ -283,10 +270,8 @@ dependencies {
283270
test {
284271
useJUnitPlatform()
285272
}
286-
```
287273
{{< /card >}}
288-
{{< card header="After" >}}
289-
```jsonpath
274+
{{< card code=true header="After" lang="jsonpath">}}
290275
plugins {
291276
id 'java'
292277
}
@@ -303,7 +288,6 @@ dependencies {
303288
test {
304289
useJUnitPlatform()
305290
}
306-
```
307291
{{< /card >}}
308292
{{< /cardpane >}}
309293

@@ -386,19 +370,15 @@ The parameters received in Timeout have switched from expecting `(long time, Tim
386370
expect `(Duration duration)`.
387371

388372
{{< cardpane >}}
389-
{{< card header="Before" >}}
390-
```java
373+
{{< card code=true header="Before" lang="Java" >}}
391374
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
392375
driver.manage().timeouts().setScriptTimeout(2, TimeUnit.MINUTES);
393376
driver.manage().timeouts().pageLoadTimeout(10, TimeUnit.SECONDS);
394-
```
395377
{{< /card >}}
396-
{{< card header="After" >}}
397-
```java
378+
{{< card code=true header="After" lang="Java" >}}
398379
driver.manage().timeouts().implicitlyWait(Duration.ofSeconds(10));
399380
driver.manage().timeouts().scriptTimeout(Duration.ofMinutes(2));
400381
driver.manage().timeouts().pageLoadTimeout(Duration.ofSeconds(10));
401-
```
402382
{{< /card >}}
403383
{{< /cardpane >}}
404384

@@ -408,27 +388,23 @@ utility methods from `FluentWait` have switched from expecting `(long time, Time
408388
expect `(Duration duration)`.
409389

410390
{{< cardpane >}}
411-
{{< card header="Before" >}}
412-
```java
391+
{{< card code=true header="Before" lang="Java" >}}
413392
new WebDriverWait(driver, 3)
414393
.until(ExpectedConditions.elementToBeClickable(By.cssSelector("#id")));
415394

416395
Wait<WebDriver> wait = new FluentWait<WebDriver>(driver)
417396
.withTimeout(30, TimeUnit.SECONDS)
418397
.pollingEvery(5, TimeUnit.SECONDS)
419398
.ignoring(NoSuchElementException.class);
420-
```
421399
{{< /card >}}
422-
{{< card header="After" >}}
423-
```java
400+
{{< card code=true header="After" lang="Java" >}}
424401
new WebDriverWait(driver, Duration.ofSeconds(3))
425402
.until(ExpectedConditions.elementToBeClickable(By.cssSelector("#id")));
426403

427404
Wait<WebDriver> wait = new FluentWait<WebDriver>(driver)
428405
.withTimeout(Duration.ofSeconds(30))
429406
.pollingEvery(Duration.ofSeconds(5))
430407
.ignoring(NoSuchElementException.class);
431-
```
432408
{{< /card >}}
433409
{{< /cardpane >}}
434410

@@ -438,25 +414,23 @@ It was possible to merge a different set of capabilities into another set, and i
438414
mutating the calling object. Now, the result of the merge operation needs to be assigned.
439415

440416
{{< cardpane >}}
441-
{{< card header="Before" >}}
442-
```java
417+
{{< card code=true header="Before" lang="Java" >}}
443418
MutableCapabilities capabilities = new MutableCapabilities();
444419
capabilities.setCapability("platformVersion", "Windows 10");
445420
FirefoxOptions options = new FirefoxOptions();
446421
options.setHeadless(true);
447422
options.merge(capabilities);
448-
```
449-
As a result, the `options` object was getting modified.
423+
424+
// As a result, the `options` object was getting modified.
450425
{{< /card >}}
451-
{{< card header="After" >}}
452-
```java
426+
{{< card code=true header="After" lang="Java" >}}
453427
MutableCapabilities capabilities = new MutableCapabilities();
454428
capabilities.setCapability("platformVersion", "Windows 10");
455429
FirefoxOptions options = new FirefoxOptions();
456430
options.setHeadless(true);
457431
options = options.merge(capabilities);
458-
```
459-
The result of the `merge` call needs to be assigned to an object.
432+
433+
// The result of the `merge` call needs to be assigned to an object.
460434
{{< /card >}}
461435
{{< /cardpane >}}
462436

@@ -479,19 +453,15 @@ The `BrowserType` interface has been around for a long time, however it is getti
479453
deprecated in favour of the new `Browser` interface.
480454

481455
{{< cardpane >}}
482-
{{< card header="Before" >}}
483-
```java
456+
{{< card code=true header="Before" lang="Java" >}}
484457
MutableCapabilities capabilities = new MutableCapabilities();
485458
capabilities.setCapability("browserVersion", "92");
486459
capabilities.setCapability("browserName", BrowserType.FIREFOX);
487-
```
488460
{{< /card >}}
489-
{{< card header="After" >}}
490-
```java
461+
{{< card code=true header="After" lang="Java" >}}
491462
MutableCapabilities capabilities = new MutableCapabilities();
492463
capabilities.setCapability("browserVersion", "92");
493464
capabilities.setCapability("browserName", Browser.FIREFOX);
494-
```
495465
{{< /card >}}
496466
{{< /cardpane >}}
497467

@@ -502,23 +472,19 @@ capabilities.setCapability("browserName", Browser.FIREFOX);
502472
Instead of it, `AddAdditionalOption` is recommended. Here is an example showing this:
503473

504474
{{< cardpane >}}
505-
{{< card header="Before" >}}
506-
```cs
475+
{{< card code=true header="Before" lang="CS" >}}
507476
var browserOptions = new ChromeOptions();
508477
browserOptions.PlatformName = "Windows 10";
509478
browserOptions.BrowserVersion = "latest";
510479
var cloudOptions = new Dictionary<string, object>();
511480
browserOptions.AddAdditionalCapability("cloud:options", cloudOptions, true);
512-
```
513481
{{< /card >}}
514-
{{< card header="After" >}}
515-
```cs
482+
{{< card code=true header="After" lang="CS" >}}
516483
var browserOptions = new ChromeOptions();
517484
browserOptions.PlatformName = "Windows 10";
518485
browserOptions.BrowserVersion = "latest";
519486
var cloudOptions = new Dictionary<string, object>();
520487
browserOptions.AddAdditionalOption("cloud:options", cloudOptions);
521-
```
522488
{{< /card >}}
523489
{{< /cardpane >}}
524490

@@ -529,21 +495,20 @@ browserOptions.AddAdditionalOption("cloud:options", cloudOptions);
529495
In Selenium 4, you'll need to set the driver's ``executable_path`` from a Service object to prevent deprecation warnings. (Or don't set the path and instead make sure that the driver you need is on the System PATH.)
530496

531497
{{< cardpane >}}
532-
{{< card header="Before" >}}
533-
```python
498+
{{< card code=true header="Before" lang="python" >}}
534499
from selenium import webdriver
535500
options = webdriver.ChromeOptions()
536-
driver = webdriver.Chrome(executable_path=CHROMEDRIVER_PATH, options=options)
537-
```
501+
driver = webdriver.Chrome(
502+
executable_path=CHROMEDRIVER_PATH,
503+
options=options
504+
)
538505
{{< /card >}}
539-
{{< card header="After" >}}
540-
```python
506+
{{< card code=true header="After" lang="Python" >}}
541507
from selenium import webdriver
542508
from selenium.webdriver.chrome.service import Service as ChromeService
543509
options = webdriver.ChromeOptions()
544510
service = ChromeService(executable_path=CHROMEDRIVER_PATH)
545511
driver = webdriver.Chrome(service=service, options=options)
546-
```
547512
{{< /card >}}
548513
{{< /cardpane >}}
549514

0 commit comments

Comments
 (0)