codeceptjs
Advanced tools
Changelog
2.3.0
run-workers
command as faster and simpler alternative to run-multiple
. Requires NodeJS v12# run all tests in parallel using 3 workers
npx codeceptjs run-workers 3
dry-run
command to print steps of test scenarios without running them. Fails to execute scenarios with grab*
methods or custom code. See #1825 for more details.npx codeceptjs dry-run
switchTo
by @KadoBOTgrabGeoLocation()
setGeoLocation()
codeceptjs
command prints list of all available commandscodeceptjs -V
flag to print version informationrun-multiple
by @z4o4zevent.step.comment
event for all comment steps like I.say
or gherking steps.Changelog
2.2.1
codeceptjs init
.grabPageScrollPosition
scrollPageToTop
scrollPageToBottom
scrollTo
switchTo
tsconfig.json
to jsconfig.json
on init. Fixed autocompletion for Visual Studio Code.uploadFile
by @VikalpP. See #1797pressKeyDelay
option. By @hubiduData().Scenario().injectDependencies()
is not a function by @andrerleao--path
option on gherkin:snippets
command by @asselin. See #1790--feature
option to gherkin:snippets
to enable creating snippets for a subset of .feature files. See #1803 by @asselin.Changelog
2.2.0
// use Polly & Puppeteer helpers
I.mockRequest('GET', '/api/users', 200);
I.mockRequest('POST', '/users', { user: { name: 'fake' }});
grab
commandsrun-multiple
(parallel execution) improvements:
bootstrapAll
must be called before creating chunks. #1741 by @VorobeykoChangelog
2.1.5
_output/cli-history
file. By @hubidugrabAllWindowHandles
returns all window handlesgrabCurrentWindowHandle
returns current window handleswitchToWindow
switched to window by its handlehost
as configuration by @trinhphamrun-multiple
command when tests
config option is undefined (in Gherkin scenarios). By @gkushang.Changelog
2.1.4
aria-label
title
aria-labelledby
downloadFile
handleDownloads
replacing downloadFile
run-multiple
with long config. By @artvinnuncheckOption
method introduced by @PeterNgTrawait
by @tsuemuraUnhandledPromiseRejectionWarning: "Execution context was destroyed...
by @adrielcodecopath
parameter to bdd:snippets
command to append snippets to a specific file. By @cthorsen31.output
parameter to def
command by @LukoyanovE.grabDataFromPerformanceTiming
by @PeterNgTr.0.19.0
by @SteveShaffersecret
and inject
function.Changelog
2.1.3
login
functiontoString()
in DataTablewhen it is defined by @tsuemuraChangelog
2.1.2
inject
to load objects recursively.// locating React element by name, prop, state
I.click({ react: 'component-name', props: {}, state: {} });
I.seeElement({ react: 'component-name', props: {}, state: {} });
Changelog
2.1.1
within
and session
calls inside retryFailedStep
plugin. Fix by @tsuemuraChangelog
2.1.0
inject()
function to require actor and page objects using dependency injection. Recommended to use in page objects, step definition files, support objects:// old way
const I = actor();
const myPage = require('../page/myPage');
// new way
const { I, myPage } = inject();
secret
function to fill in sensitive data. By @RohanHart:I.fillField('password', secret('123456'));
swipe*
methods by @PeterNgTrrun-multiple
for feature files. Sponsored by @GSasu--features
and --tests
options to run-multiple
. Sponsored by @GSasuBefore
and After
hooks in step definitionsuncheckOption
and fixed behavior of checkOption
by @aml2610seeTextEquals
on empty strings by @PeterNgTrbrowserWSEndpoint
config by @ngadiyak.This release was partly sponsored by @GSasu. Thanks for the support! Do you want to improve this project? [Learn more about sponsorin CodeceptJS
Changelog
2.0.8
downloadFile
action by @PeterNgTr.Use it with FileSystem
helper to test availability of a file:
const fileName = await I.downloadFile('a.file-link');
I.amInPath('output');
I.seeFile(fileName);
Actions
amInPath
andseeFile
are taken from FileSystem helper
autoLogin
plugin with Puppeteer by @davertmikseeInField
should throw error if element has no value attrubite. By @PeterNgTrseeTextEquals
passes for any string if element is empty by @PeterNgTr.el.isDisplayed
to match latest webdriverio implementation. Thanks to @LukoyanovElocator.stringify
call by @LukoyanovE