Skip to content

Commit ff66adf

Browse files
committed
[js] Remove support for operadriver and phantomjs since neither are under active
development
1 parent c063bb8 commit ff66adf

File tree

7 files changed

+17
-780
lines changed

7 files changed

+17
-780
lines changed

javascript/node/selenium-webdriver/CHANGES.md

+12
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
## v.next
22

3+
### Changes to Supported Browsers
4+
5+
Native support has been removed for Opera and PhantomJS as the WebDriver
6+
implementations for these browsers are no longer under active development.
7+
8+
For Opera, users should be able to simply rely on testing Chrome as the Opera
9+
browser is based on Chromium (and the operadriver was a thin wrapper around
10+
chromedriver). For PhantomJS, users should use Chrome or Firefox in headless
11+
mode.
12+
313
### API Changes
414

515
* The core WebDriver API no longer uses promise manager
@@ -10,6 +20,8 @@
1020
- `lib/webdriver.WebElementPromise`
1121
* The `testing/index` module no longer wraps the promise manager
1222
* Removed `remote/index.DriverService.prototype.stop()` (use `#kill()` instead)
23+
* Removed the `phantomjs` module
24+
* Removed the 'opera' module
1325

1426

1527
## v3.6.0

javascript/node/selenium-webdriver/README.md

+5-9
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@ Selenium may be installed via npm with
1111
npm install selenium-webdriver
1212

1313
You will need to download additional components to work with each of the major
14-
browsers. The drivers for Chrome, Firefox, PhantomJS, Opera, and
15-
Microsoft's IE and Edge web browsers are all standalone executables that should
16-
be placed on your system [PATH]. Apple's safaridriver is shipped with
17-
Safari 10 for OS X El Capitan and macOS Sierra. You will need to enable Remote
18-
Automation in the Develop menu of Safari 10 before testing.
14+
browsers. The drivers for Chrome, Firefox, and Microsoft's IE and Edge web
15+
browsers are all standalone executables that should be placed on your system
16+
[PATH]. Apple's safaridriver is shipped with Safari 10 for OS X El Capitan and
17+
macOS Sierra. You will need to enable Remote Automation in the Develop menu of
18+
Safari 10 before testing.
1919

2020

2121
| Browser | Component |
@@ -24,8 +24,6 @@ Automation in the Develop menu of Safari 10 before testing.
2424
| Internet Explorer | [IEDriverServer.exe][release] |
2525
| Edge | [MicrosoftWebDriver.msi][edge] |
2626
| Firefox | [geckodriver(.exe)][geckodriver] |
27-
| PhantomJS | [phantomjs(.exe)][phantomjs] |
28-
| Opera | [operadriver(.exe)][opera] |
2927
| Safari | [safaridriver] |
3028

3129
## Usage
@@ -216,8 +214,6 @@ under the License.
216214
[chrome]: http://chromedriver.storage.googleapis.com/index.html
217215
[gh]: https://github.com/SeleniumHQ/selenium/
218216
[issues]: https://github.com/SeleniumHQ/selenium/issues
219-
[opera]: https://github.com/operasoftware/operachromiumdriver/releases
220-
[phantomjs]: http://phantomjs.org/
221217
[edge]: http://go.microsoft.com/fwlink/?LinkId=619687
222218
[geckodriver]: https://github.com/mozilla/geckodriver/releases/
223219
[reduction]: http://www.webkit.org/quality/reduction.html

javascript/node/selenium-webdriver/index.js

-28
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,6 @@ const promise = require('./lib/promise');
3939
const session = require('./lib/session');
4040
const until = require('./lib/until');
4141
const webdriver = require('./lib/webdriver');
42-
const opera = require('./opera');
43-
const phantomjs = require('./phantomjs');
4442
const remote = require('./remote');
4543
const safari = require('./safari');
4644

@@ -219,9 +217,6 @@ class Builder {
219217
/** @private {firefox.Options} */
220218
this.firefoxOptions_ = null;
221219

222-
/** @private {opera.Options} */
223-
this.operaOptions_ = null;
224-
225220
/** @private {ie.Options} */
226221
this.ieOptions_ = null;
227222

@@ -453,20 +448,6 @@ class Builder {
453448
return this.firefoxOptions_;
454449
}
455450

456-
/**
457-
* Sets Opera specific {@linkplain opera.Options options} for drivers created
458-
* by this builder. Any logging or proxy settings defined on the given options
459-
* will take precedence over those set through {@link #setLoggingPrefs} and
460-
* {@link #setProxy}, respectively.
461-
*
462-
* @param {!opera.Options} options The OperaDriver options to use.
463-
* @return {!Builder} A self reference.
464-
*/
465-
setOperaOptions(options) {
466-
this.operaOptions_ = options;
467-
return this;
468-
}
469-
470451
/**
471452
* Set Internet Explorer specific {@linkplain ie.Options options} for drivers
472453
* created by this builder. Any proxy settings defined on the given options
@@ -564,9 +545,6 @@ class Builder {
564545
} else if (browser === Browser.INTERNET_EXPLORER && this.ieOptions_) {
565546
capabilities.merge(this.ieOptions_.toCapabilities());
566547

567-
} else if (browser === Browser.OPERA && this.operaOptions_) {
568-
capabilities.merge(this.operaOptions_.toCapabilities());
569-
570548
} else if (browser === Browser.SAFARI && this.safariOptions_) {
571549
capabilities.merge(this.safariOptions_.toCapabilities());
572550

@@ -620,12 +598,6 @@ class Builder {
620598
case Browser.EDGE:
621599
return createDriver(edge.Driver, capabilities, null);
622600

623-
case Browser.OPERA:
624-
return createDriver(opera.Driver, capabilities, null);
625-
626-
case Browser.PHANTOM_JS:
627-
return createDriver(phantomjs.Driver, capabilities);
628-
629601
case Browser.SAFARI:
630602
return createDriver(safari.Driver, capabilities);
631603

0 commit comments

Comments
 (0)