Skip to content

Commit 8553b0c

Browse files
committed
Adding flag when starting Chrome with a given location.
This is needed in Ubuntu because Chrome is locking the profile file when a custom location is given.
1 parent f6cf4df commit 8553b0c

File tree

8 files changed

+27
-23
lines changed

8 files changed

+27
-23
lines changed

examples/ruby/spec/browsers/chrome_spec.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,9 @@
2020
end
2121

2222
it 'sets location of binary' do
23+
user_data_dir = Dir.mktmpdir('chrome-profile-')
2324
options = Selenium::WebDriver::Options.chrome
25+
options.add_argument("--user-data-dir=#{user_data_dir}")
2426

2527
options.binary = chrome_location
2628

examples/ruby/spec/drivers/service_spec.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@
1616
end
1717

1818
it 'specifies driver location' do
19+
user_data_dir = Dir.mktmpdir('chrome-profile-')
1920
options = Selenium::WebDriver::Options.chrome(binary: browser_path)
21+
options.add_argument("--user-data-dir=#{user_data_dir}")
2022
service = Selenium::WebDriver::Service.chrome
2123

2224
service.executable_path = driver_path

website_and_docs/content/documentation/webdriver/browsers/chrome.en.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ Add a browser location to options:
9292
{{< gh-codeblock path="/examples/dotnet/SeleniumDocs/Browsers/ChromeTest.cs#L49" >}}
9393
{{< /tab >}}
9494
{{< tab header="Ruby" >}}
95-
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L25" >}}
95+
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L27" >}}
9696
{{< /tab >}}
9797
{{< tab header="JavaScript" >}}
9898
{{< gh-codeblock path="/examples/javascript/test/browser/chromeSpecificCaps.spec.js#L41-L44">}}
@@ -121,7 +121,7 @@ Add an extension to options:
121121
{{< gh-codeblock path="/examples/dotnet/SeleniumDocs/Browsers/ChromeTest.cs#L61" >}}
122122
{{< /tab >}}
123123
{{< tab header="Ruby" >}}
124-
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L34" >}}
124+
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L36" >}}
125125
{{< /tab >}}
126126
{{< tab header="JavaScript" >}}
127127
{{< gh-codeblock path="/examples/javascript/test/browser/chromeSpecificCaps.spec.js#L62-L66">}}
@@ -147,7 +147,7 @@ so long as the quit command is not sent to the driver.
147147
**Note**: This is already the default behavior in .NET.
148148
{{% /tab %}}
149149
{{< tab header="Ruby" >}}
150-
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L45" >}}
150+
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L47" >}}
151151
{{< /tab >}}
152152
{{< tab header="JavaScript" >}}
153153
{{< gh-codeblock path="/examples/javascript/test/browser/chromeSpecificCaps.spec.js#L29-L32">}}
@@ -178,7 +178,7 @@ Set excluded arguments on options:
178178
{{< gh-codeblock path="examples/dotnet/SeleniumDocs/Browsers/ChromeTest.cs#L76" >}}
179179
{{< /tab >}}
180180
{{< tab header="Ruby" >}}
181-
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L53" >}}
181+
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L55" >}}
182182
{{< /tab >}}
183183
{{< tab header="JavaScript" >}}
184184
{{< gh-codeblock path="/examples/javascript/test/browser/chromeSpecificCaps.spec.js#L19-L22">}}
@@ -219,7 +219,7 @@ Property value: String representing path to log file
219219
{{< /tab >}}
220220
{{< tab header="Ruby" >}}
221221
{{< badge-version version="4.10" >}}
222-
{{< gh-codeblock path="examples/ruby/spec/browsers/chrome_spec.rb#L67" >}}
222+
{{< gh-codeblock path="examples/ruby/spec/browsers/chrome_spec.rb#L69" >}}
223223
{{< /tab >}}
224224
{{< tab header="JavaScript" >}}
225225
{{< badge-code >}}
@@ -251,7 +251,7 @@ Property value: `DriverService.LOG_STDOUT` or `DriverService.LOG_STDERR`
251251
{{% tab header="Ruby" %}}
252252
`$stdout` and `$stderr` are both valid values
253253
{{< badge-version version="4.10" >}}
254-
{{< gh-codeblock path="examples/ruby/spec/browsers/chrome_spec.rb#L76" >}}
254+
{{< gh-codeblock path="examples/ruby/spec/browsers/chrome_spec.rb#L78" >}}
255255
{{% /tab %}}
256256
{{< tab header="JavaScript" >}}
257257
{{< badge-code >}}
@@ -283,7 +283,7 @@ Property value: String representation of `ChromiumDriverLogLevel` enum
283283
{{< /tab >}}
284284
{{< tab header="Ruby" >}}
285285
{{< badge-version version="4.10" >}}
286-
{{< gh-codeblock path="examples/ruby/spec/browsers/chrome_spec.rb#L87" >}}
286+
{{< gh-codeblock path="examples/ruby/spec/browsers/chrome_spec.rb#L89" >}}
287287
{{< /tab >}}
288288
{{< tab header="JavaScript" >}}
289289
{{< badge-code >}}
@@ -317,7 +317,7 @@ Property value: `"true"` or `"false"`
317317
{{< /tab >}}
318318
{{< tab header="Ruby" >}}
319319
{{< badge-version version="4.8" >}}
320-
{{< gh-codeblock path="examples/ruby/spec/browsers/chrome_spec.rb#L97-L98" >}}
320+
{{< gh-codeblock path="examples/ruby/spec/browsers/chrome_spec.rb#L99-L100" >}}
321321
{{< /tab >}}
322322
{{< tab header="JavaScript" >}}
323323
{{< badge-code >}}
@@ -350,7 +350,7 @@ Property value: `"true"` or `"false"`
350350
{{< /tab >}}
351351
{{< tab header="Ruby" >}}
352352
{{< badge-version version="4.8" >}}
353-
{{< gh-codeblock path="examples/ruby/spec/browsers/chrome_spec.rb#L108" >}}
353+
{{< gh-codeblock path="examples/ruby/spec/browsers/chrome_spec.rb#L110" >}}
354354
{{< /tab >}}
355355
{{< tab header="JavaScript" >}}
356356
{{< badge-code >}}
@@ -379,7 +379,7 @@ You can drive Chrome Cast devices, including sharing tabs
379379
{{< badge-code >}}
380380
{{< /tab >}}
381381
{{< tab header="Ruby" >}}
382-
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L119-L124" >}}
382+
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L121-L126" >}}
383383
{{< /tab >}}
384384
{{< tab header="JavaScript" >}}
385385
{{< badge-code >}}
@@ -405,7 +405,7 @@ You can simulate various network conditions.
405405
{{< badge-code >}}
406406
{{< /tab >}}
407407
{{< tab header="Ruby" >}}
408-
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L129" >}}
408+
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L131" >}}
409409
{{< /tab >}}
410410
{{< tab header="JavaScript" >}}
411411
{{< badge-code >}}
@@ -428,7 +428,7 @@ You can simulate various network conditions.
428428
{{< badge-code >}}
429429
{{< /tab >}}
430430
{{< tab header="Ruby" >}}
431-
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L141" >}}
431+
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L143" >}}
432432
{{< /tab >}}
433433
{{< tab header="JavaScript" >}}
434434
{{< badge-code >}}
@@ -451,7 +451,7 @@ You can simulate various network conditions.
451451
{{< badge-code >}}
452452
{{< /tab >}}
453453
{{< tab header="Ruby" >}}
454-
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L149-L150" >}}
454+
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L151-L152" >}}
455455
{{< /tab >}}
456456
{{< tab header="JavaScript" >}}
457457
{{< badge-code >}}

website_and_docs/content/documentation/webdriver/browsers/chrome.ja.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ ChromeおよびChromiumに特有の機能は、Googleの [Capabilities & ChromeO
9191
{{< gh-codeblock path="/examples/dotnet/SeleniumDocs/Browsers/ChromeTest.cs#L49" >}}
9292
{{< /tab >}}
9393
{{< tab header="Ruby" >}}
94-
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L25" >}}
94+
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L27" >}}
9595
{{< /tab >}}
9696
{{< tab header="JavaScript" >}}
9797
{{< gh-codeblock path="/examples/javascript/test/browser/chromeSpecificCaps.spec.js#L41-L44">}}
@@ -120,7 +120,7 @@ The `extensions` パラメータはcrxファイルを受け入れます。解凍
120120
{{< gh-codeblock path="/examples/dotnet/SeleniumDocs/Browsers/ChromeTest.cs#L61" >}}
121121
{{< /tab >}}
122122
{{< tab header="Ruby" >}}
123-
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L34" >}}
123+
{{< gh-codeblock path="/examples/ruby/spec/browsers/chrome_spec.rb#L36" >}}
124124
{{< /tab >}}
125125
{{< tab header="JavaScript" >}}
126126
{{< gh-codeblock path="/examples/javascript/test/browser/chromeSpecificCaps.spec.js#L62-L66">}}

website_and_docs/content/documentation/webdriver/drivers/service.en.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ If you cannot update Selenium or have an advanced use case, here is how to speci
6161
{{< /tab >}}
6262
{{< tab header="Ruby" >}}
6363
{{< badge-version version="4.8" >}}
64-
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L22" >}}
64+
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L24" >}}
6565
{{< /tab >}}
6666
{{< tab header="JavaScript" >}}
6767
{{< badge-code >}}
@@ -88,7 +88,7 @@ If you want the driver to run on a specific port, you may specify it as follows:
8888
{{< /tab >}}
8989
{{< tab header="Ruby" >}}
9090
{{< badge-version version="4.8" >}}
91-
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L29" >}}
91+
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L31" >}}
9292
{{< /tab >}}
9393
{{< tab header="JavaScript" >}}
9494
{{< badge-code >}}

website_and_docs/content/documentation/webdriver/drivers/service.ja.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ weight: 3
5252
{{< /tab >}}
5353
{{< tab header="Ruby" >}}
5454
{{< badge-version version="4.8" >}}
55-
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L22" >}}
55+
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L24" >}}
5656
{{< /tab >}}
5757
{{< tab header="JavaScript" >}}
5858
{{< badge-code >}}
@@ -79,7 +79,7 @@ weight: 3
7979
{{< /tab >}}
8080
{{< tab header="Ruby" >}}
8181
{{< badge-version version="4.8" >}}
82-
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L29" >}}
82+
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L31" >}}
8383
{{< /tab >}}
8484
{{< tab header="JavaScript" >}}
8585
{{< badge-code >}}

website_and_docs/content/documentation/webdriver/drivers/service.pt-br.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ If you can not update Selenium or have an advanced use case here is how to speci
5757
{{< /tab >}}
5858
{{< tab header="Ruby" >}}
5959
{{< badge-version version="4.8" >}}
60-
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L22" >}}
60+
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L24" >}}
6161
{{< /tab >}}
6262
{{< tab header="JavaScript" >}}
6363
{{< badge-code >}}
@@ -84,7 +84,7 @@ If you want the driver to run on a specific port, you may specify it as follows:
8484
{{< /tab >}}
8585
{{< tab header="Ruby" >}}
8686
{{< badge-version version="4.8" >}}
87-
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L29" >}}
87+
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L31" >}}
8888
{{< /tab >}}
8989
{{< tab header="JavaScript" >}}
9090
{{< badge-code >}}

website_and_docs/content/documentation/webdriver/drivers/service.zh-cn.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ weight: 3
5959
{{< /tab >}}
6060
{{< tab header="Ruby" >}}
6161
{{< badge-version version="4.8" >}}
62-
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L22" >}}
62+
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L24" >}}
6363
{{< /tab >}}
6464
{{< tab header="JavaScript" >}}
6565
{{< badge-code >}}
@@ -87,7 +87,7 @@ weight: 3
8787
{{< /tab >}}
8888
{{< tab header="Ruby" >}}
8989
{{< badge-version version="4.8" >}}
90-
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L29" >}}
90+
{{< gh-codeblock path="examples/ruby/spec/drivers/service_spec.rb#L31" >}}
9191
{{< /tab >}}
9292
{{< tab header="JavaScript" >}}
9393
{{< badge-code >}}

0 commit comments

Comments
 (0)