1
- package io .github .tahanima .driver ;
1
+ package io .github .tahanima .util ;
2
+
3
+ import static io .github .tahanima .config .ConfigurationManager .config ;
4
+
5
+ import static java .lang .Boolean .TRUE ;
2
6
3
7
import io .github .bonigarcia .wdm .WebDriverManager ;
8
+
4
9
import org .openqa .selenium .WebDriver ;
5
10
import org .openqa .selenium .chrome .ChromeDriver ;
6
11
import org .openqa .selenium .chrome .ChromeOptions ;
11
16
12
17
import java .time .Duration ;
13
18
14
- import static io .github .tahanima .config .ConfigurationManager .configuration ;
15
- import static java .lang .Boolean .TRUE ;
16
-
17
19
/**
18
20
* This enum handles the initialization of browser drivers.
19
21
*
@@ -32,7 +34,7 @@ public WebDriver initializeDriver() {
32
34
33
35
driver .manage ()
34
36
.timeouts ()
35
- .implicitlyWait (Duration .ofSeconds (configuration ().timeout ()));
37
+ .implicitlyWait (Duration .ofSeconds (config ().timeout ()));
36
38
driver .manage ().window ().maximize ();
37
39
38
40
return driver ;
@@ -42,7 +44,10 @@ private ChromeOptions getOptions() {
42
44
ChromeOptions options = new ChromeOptions ();
43
45
44
46
options .setAcceptInsecureCerts (true );
45
- options .setHeadless (configuration ().headless ());
47
+
48
+ if (config ().headless ()) {
49
+ options .addArguments ("--headless=new" );
50
+ }
46
51
47
52
return options ;
48
53
}
@@ -57,7 +62,7 @@ public WebDriver initializeDriver() {
57
62
58
63
driver .manage ()
59
64
.timeouts ()
60
- .implicitlyWait (Duration .ofSeconds (configuration ().timeout ()));
65
+ .implicitlyWait (Duration .ofSeconds (config ().timeout ()));
61
66
driver .manage ().window ().maximize ();
62
67
63
68
return driver ;
@@ -67,7 +72,10 @@ private FirefoxOptions getOptions() {
67
72
FirefoxOptions options = new FirefoxOptions ();
68
73
69
74
options .setAcceptInsecureCerts (true );
70
- options .setHeadless (configuration ().headless ());
75
+
76
+ if (config ().headless ()) {
77
+ options .addArguments ("--headless=new" );
78
+ }
71
79
72
80
return options ;
73
81
}
@@ -82,7 +90,7 @@ public WebDriver initializeDriver() {
82
90
83
91
driver .manage ()
84
92
.timeouts ()
85
- .implicitlyWait (Duration .ofSeconds (configuration ().timeout ()));
93
+ .implicitlyWait (Duration .ofSeconds (config ().timeout ()));
86
94
driver .manage ().window ().maximize ();
87
95
88
96
return driver ;
@@ -93,11 +101,11 @@ private SafariOptions getOptions() {
93
101
94
102
options .setAcceptInsecureCerts (true );
95
103
96
- if (TRUE .equals (configuration ().headless ())) {
104
+ if (TRUE .equals (config ().headless ())) {
97
105
throw new IllegalStateException (
98
106
String .format (
99
107
"Headless not supported for %s browser" ,
100
- configuration ().browser ()));
108
+ config ().browser ()));
101
109
}
102
110
103
111
return options ;
0 commit comments