spectron-test
Version:
Easily test your Electron apps using ChromeDriver and WebdriverIO.
215 lines (143 loc) • 6.52 kB
Markdown
# 5.0.0
* Supports Electron `3.x.y` releases.
# 4.0.0
* Supports Electron `2.0.x` releases.
# 3.8.0
* Supports Electron `1.8.x` releases.
# 3.7.3
* Updated README with better examples and fixed typos.
* Use launcher.bat instead of launcher.exe for Windows
* Added `webdriverOptions` to allow specifying additional webdriver options.
# 3.7.2
* Added `webdriverLogPath` to the Spectron typescript definition.
* Fixed typescript definition reference to the Electron API.
# 3.7.1
* Added a `chromeDriverArgs` option to the `Application` constructor that
can be used to pass arguments directly to `chromedriver`.
# 3.7.0
* Supports Electron `1.7.x` releases.
# 3.6.5
* Updated typescript definition for WebDriver logging support.
* Enhanced waitUntilTextExists() to find substrings in case the selector
matches multiple elements.
# 3.6.4
* Added a `chromeDriverArgs` option to the `Application` constructor that
can be used to pass arguments directly to `chromedriver`.
# 3.6.3
* Added a `spectron.d.ts` file referenced from the `types` field in the
`package.json`.
* Switched to using the WebdriverIO `timeouts` API instead of the
deprecated `timeoutsAsyncScript` API.
# 3.6.2
* Reverted the console warning about incompatible minor versions since it
caused launch issues.
# 3.6.1
* Display a warning in the console when the installed minor versions of
Electron and Spectron do not match.
# 3.6.0
* Supports Electron `1.6.x` releases.
# 3.5.0
* Supports Electron `1.5.x` releases.
# 3.4.1
* Fixed an issue where an error would be thrown when the `process` global
was set to `null`.
# 3.4.0
* Supports Electron `1.4.x` releases.
* The `Application.isRunning()` API is now public.
* Added an `Application.getSettings()` API to access the settings specified to
the `Application` constructor.
* Fixed an issue where `waitUntilWindowLoaded()` did not properly resolve when
the `webContents` reported as loaded.
* Fixed an issue where `waitUntilTextExists()` did not properly reject when
the element did not exist or a timeout occurred.
* Fixed an issue where a broken pipe error could occur in certain apps.
# 3.3.0
* Supports Electron `1.3.x` releases.
# 3.2.6
* Add `ignoreRules` option to `app.client.auditAccessibility(options)`. See
README for usage details.
# 3.2.5
* Add `app.client.auditAccessibility` API that audits the window for
accessibility issues. See README for usage details.
# 3.2.3
* Add `chromeDriverLogPath` option to `Application`. See README for usage
details.
# 3.2.2
* Add `debuggerAddress` option to `Application`. See README for usage details.
# 3.2.0
* Supports Electron `1.2.x` releases.
# 3.1.3
* Improve detection of Node integration inside application and gracefully
handle disabled Node integration.
# 3.1.2
* Add support for the async `WebContents.savePage` API. See the README
for usage details.
# 3.1.1
* Add support for the async `BrowserWindow.capturePage` API. See the README
for usage details.
# 3.1.0
* Supports Electron `1.1.x` releases.
# 3.0.1
* Added a new `requireName` option to `Application` for if your app is
re-assigning the `require` function to a different name on `window`.
* Fixed an issue where applications setting `nodeIntegration` to `false` could
not be tested.
# 3.0.0
* Spectron now runs with `electron-chromedriver` 1.0 and is targeted at
apps using Electron 1.0 or later.
* No API changes.
# 2.37.0
* Added a `restart()` method to `Application`
* Added support for the full Electron API
* Many custom helpers have been removed in favor of accessing the Electron
APIs directly through the new properties on the `Application` object.
* `app.client.getWindowBounds()` should now be `app.browserWindow.getBounds()`
* `app.client.getClipboardText()` should now be `app.electron.clipboard.readText()`
* See the README or https://github.com/kevinsawicki/spectron/pull/18 for
more details.
* You should now use `app.transferPromiseness` instead of `app.client.transferPromiseness`
to ensure these new properties are correctly transferred to chained promises.
# 1.37.1
* Add the `getAppPath(name)` that maps to the
`require('electron').app.getPath(name)` API.
# 1.37.0
* Upgraded to WebdriverIO 4.0.4
* Added a `connectionRetryCount` config option to `Application` that sets the
default number of connection retries to make to ChromeDriver.
* Added a `connectionRetryTimeout` config option to `Application` that sets
the default number of milliseconds to wait when connecting to ChromeDriver.
# 0.36.1
* Added a `cwd` config option to `Application` that sets the working
directory of the launched application. This option defaults to
`process.cwd()`.
* Added a `getCwd` command helper to get the current working directory of the
main process.
# 0.35.5
* Added a `startTimeout` config option to `Application` that sets the default
millisecond timeout to wait for ChromeDriver to start up. This option
defaults to 5 seconds.
* Added a `nodePath` config option to `Application` that sets the path to a
`node` executable that will be used to launch the ChromeDriver startup
script.
# 0.35.4
* Added `getMainProcessGlobal` command helper to get a global from the main
process.
# 0.35.2
* Remove use of deprecated Electron APIs.
# 0.35.1
* Added `getMainProcessLogs` command helpers to get main process logs.
* Added `getRenderProcessLogs` command helpers to get render process logs.
# 0.34.1
* Added a `waitTimeout` config option to `Application` that sets the default
millisecond timeout for all wait-based command helpers like `waitUntil`,
`waitUntilWindowLoaded`, etc. This option defaults to 5 seconds.
* Added a `windowByIndex(index)` command helper that focuses a window by
index in the `windowHandles()` array order.
* Added `setRepresentedFilename` and `getRepresentedFilename` command helpers.
* Added `isDocumentEdited` and `setDocumentEdited` command helpers.
* `setWindowDimensions` was renamed to `setWindowBounds` to mirror the new
Electron `BrowserWindow.setBounds` API. It also takes a `bounds` object
argument instead of multiple arguments for size and position. See the
`README` for an example
* `getWindowDimensions` was renamed to `getWindowBounds` to mirror the new
Electron `BrowserWindow.getBounds` API. See the `README` for an example.