Changelog History
Page 10
-
v1.0.3 Changes
- [WebDriverIO][Protractor][Nightmare] method
waitUntilExists
implemented by @sabau - Absolute path can be set for
output
dir by @APshenkin. Fix #571* Data table rows can be ignored by usingxadd
. By @APhenkin - โ Added
Data(table).only.Scenario
to give ability to launch only Data tests. By @APhenkin - Implemented
ElementNotFound
error by @BorisOsipov. - โ Added TypeScript compiler / configs to check the JavaScript by @KennyRules
- [Nightmare] fix executeScript return value by @jploskonka
- ๐ [Nightmare] fixed: err.indexOf not a function when waitForText times out in nightmare by @joeypedicini92
- ๐ Fixed: Retries not working when using .only. By @APhenkin
- [WebDriverIO][Protractor][Nightmare] method
-
v1.0.2 Changes
- ๐ Introduced generators support in scenario hooks for
BeforeSuite
/Before
/AfterSuite
/After
- ๐ฆ [ApiDataFactory] Fixed loading helper;
requireg
package included. - ๐ Fix #485
run-multiple
: the first browser-resolution combination was be used in all configurations - ๐ Fixed unique test names:
- Fixed #447 tests failed silently if they have the same name as other tests.
- Use uuid in screenshot names when
uniqueScreenshotNames: true
- โ
[Protractor] Fixed testing non-angular application.
amOutsideAngularApp
is executed before each step. Fixes #458* Added output for steps in hooks when they fail
- ๐ Introduced generators support in scenario hooks for
-
v1.0.1 Changes
- Reporters improvements:
- Allows to execute multiple reporters
- Added Mochawesome helper
addMochawesomeContext
method to add custom data to mochawesome reports- Fixed Mochawesome context for failed screenshots.
- ๐ [WebDriverIO] improved click on context to match clickable element with a text inside. Fixes #647* [Nightmare] Added
refresh
function by @awhanks - ๐ fixed
Unhandled promise rejection (rejection id: 1): Error: Unknown wait type: pageLoad
- ๐ support for tests with retries in html report
- โ be sure that change window size and timeouts completes before test
- ๐ [Nightmare] Fixed
[Wrapped Error] "codeceptjs is not defined"
; Reinjectiing client scripts to a webpage on changes. - [Nightmare] Added more detailed error messages for
Wait*
methods - ๐ [Nightmare] Fixed adding screenshots to Mochawesome
- [Nightmare] Fix unique screenshots names in Nightmare
- ๐ Fixed CodeceptJS work with hooks in helpers to finish codeceptJS correctly if errors appears in helpers hooks
- โ Create a new session for next test If selenium grid error received
- Create screenshots for failed hooks from a Feature file
- ๐ Fixed
retries
option
- Reporters improvements:
-
v1.0 Changes
โ CodeceptJS hits first stable release. CodeceptJS provides a unified API for web testing for Webdriverio, Protractor, and NightmareJS. Since 1.0 you can also test mobile applications in the similar manner with Appium.
โ Sample test:
I.seeAppIsInstalled("io.super.app"); I.click('~startUserRegistrationCD'); I.fillField('~email of the customer', 'Nothing special')); I.see('[email protected]', '~email of the customer')); I.clearField('~email of the customer')); I.dontSee('Nothing special', '~email of the customer'));
- โ Read the Mobile Testing guide.
- Discover Appium Helper
We also introduced two new helpers for data management. โ Using them you can easily prepare and cleanup data for your tests using public REST API.
โ Sample test
// create a user using data factories and REST API I.have('user', { name: 'davert', password: '123456' }); // use it to login I.amOnPage('/login'); I.fillField('login', 'davert'); I.fillField('password', '123456'); I.click('Login'); I.see('Hello, davert'); // user will be removed after the test
Next notable feature is SmartWait for WebDriverIO, Protractor, SeleniumWebdriver. When
smartwait
option is set, script will wait for extra milliseconds to locate an element before failing. This feature uses implicit waits of Selenium but turns them on only in applicable pieces. For instance, implicit waits are enabled forseeElement
but disabled fordontSeeElement
- Read more about SmartWait
๐ Changelog
- Minimal NodeJS version is 6.11.1 LTS
- ๐ Use
within
command with generators. - โ Data Driven Tests introduced.
- ๐จ Print execution time per step in
--debug
mode. #591 by @APshenkin - [WebDriverIO][Protractor][Nightmare] Added
disableScreenshots
option to disable screenshots on fail by @Apshenkin - [WebDriverIO][Protractor][Nightmare] Added
uniqueScreenshotNames
option to generate unique names for screenshots on failure by @Apshenkin - ๐ [WebDriverIO][Nightmare] Fixed click on context;
click('text', '#el')
will throw exception if text is not found inside#el
. - [WebDriverIO][Protractor][SeleniumWebdriver] SmartWait introduced.
- ๐ [WebDriverIO][Protractor][Nightmare]Fixed
saveScreenshot
for PhantomJS,fullPageScreenshots
option introduced by @HughZurname #549 - [Appium] helper introduced by @APshenkin
- [REST] helper introduced by @atrevino in #504
- ๐ [WebDriverIO][SeleniumWebdriver] Fixed "windowSize": "maximize" for Chrome 59+ version #560 by @APshenkin
- ๐ [Nightmare] Fixed restarting by @APshenkin #581
- [WebDriverIO] Methods added by @APshenkin:
- grabCssPropertyFrom
- seeTitleEquals
- seeTextEquals
- seeCssPropertiesOnElements
- seeAttributesOnElements
- grabNumberOfVisibleElements
- waitInUrl
- waitUrlEquals
- waitForValue
- waitNumberOfVisibleElements
- switchToNextTab
- switchToPreviousTab
- closeCurrentTab
- openNewTab
- refreshPage
- scrollPageToBottom
- scrollPageToTop
- grabBrowserLogs
- ๐ Use mkdirp to create output directory. #592 by @vkramskikh
- ๐ [WebDriverIO] Fixed
seeNumberOfVisibleElements
by @BorisOsipov #574 - ๐ Lots of fixes for promise chain by @APshenkin #568
- Fix #543- After block not properly executed if Scenario fails
- Expected behavior in promise chains:
_beforeSuite
hooks from helpers ->BeforeSuite
from test ->_before
hooks from helpers ->Before
from test - > Test steps ->_failed
hooks from helpers (if test failed) ->After
from test ->_after
hooks from helpers ->AfterSuite
from test ->_afterSuite
hook from helpers. - if during test we got errors from any hook (in test or in helper) - stop complete this suite and go to another
- if during test we got error from Selenium server - stop complete this suite and go to another
- [WebDriverIO][Protractor] if
restart
option is false - close all tabs expect one in_after
. - Complete
_after
,_afterSuite
hooks even After/AfterSuite from test was failed - Don't close browser between suites, when
restart
option is false. We should start browser only one time and close it only after all tests. - Close tabs and clear local storage, if
keepCookies
flag is enabled
- ๐ Fix TypeError when using babel-node or ts-node on node.js 7+ #586 by @vkramskikh
- ๐ [Nightmare] fixed usage of
_locate
Special thanks to Andrey Pshenkin for his work on this release and the major improvements.
-
v0.6.3 Changes
- ๐จ Errors are printed in non-verbose mode. Shows "Selenium not started" and other important errors.
- ๐ Allowed to set custom test options:
Scenario('My scenario', { build_id: 123, type: 'slow' }, function (I)
โ those options can be accessed as
opts
property inside atest
object. Can be used in custom listeners.- โ Added
docs
directory to a package. - ๐ [WebDriverIO][Protractor][SeleniumWebdriver] Bugfix: cleaning session when
restart: false
by @tfiwm #519 - [WebDriverIO][Protractor][Nightmare] Added second parameter to
saveScreenshot
to allow a full page screenshot. By @HughZurname - โ Added suite object to
suite.before
andsuite.after
events by @implico. #496
-
v0.6.2 Changes
- โ Added
config
object to public API - Extended
index.js
to includeactor
andhelpers
, so they could be required:
const actor = require('codeceptjs').actor;
- โ Added example for creating custom runner with public API.
- โ run command to create
output
directory if it doesn't exist - ๐ [Protractor] fixed loading globally installed Protractor
- โ run-multiple command improvements:
- create output directories for each process
- print process ids in output
- โ Added
-
v0.6.1 Changes
- ๐ Fixed loading hooks
-
v0.6.0 Changes
๐ Major release with extension API and parallel execution.
- ๐ฅ Breaking Removed path argument from
run
. To specify path other than current directory use--config
or-c
option:
โ Instead of:
codeceptjs run tests
use: - ๐ฅ Breaking Removed path argument from
-
v0.5.1 Changes
- ๐ Polish translation added by @limes.
- โก๏ธ Update process exit code so that mocha saves reports before exit by @romanovma.
- ๐ [Nightmare] fixed
getAttributeFrom
for custom attributes by @robrkerr - โ [Nightmare] Fixed UnhandledPromiseRejectionWarning error when selecting the dropdown using
selectOption
by @robrkerr. [Se PR. - ๐ [Protractor] fixed
pressKey
method by @romanovma
-
v0.5.0 Changes
- ๐ Protractor 5.0.0 support (while keeping 4.0.9 compatibility)
- ๐ Fix 'fullTitle() is not a function' in exit.js by @hubidu. See #388.
- ๐ [Nightmare] Fix for
waitTimeout
by @HughZurname. See #391. Resolves #236* Dockerized CodeceptJS setup by @artiomnist. See reference