Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

codeceptjs

Package Overview
Dependencies
Maintainers
4
Versions
235
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

codeceptjs - npm Package Versions

1
23

1.4.3

Diff

Changelog

Source

1.4.3

  • Groups renamed to Tags for compatibility with BDD layer
  • Test and suite objects to contain tags property which can be accessed from internal API
  • Fixed adding tags for Scenario Outline in BDD
  • Added tag() method to ScenarioConfig and FeatureConfig:
Scenario('update user profile', () => {
  // test goes here
}).tag('@slow');
  • Fixed attaching Allure screenshot on exception. Fix by @DevinWatson
  • Improved type definitions for custom steps. By @Akxe
  • Fixed setting multiple.parallel.chunks as environment variable in config. See #1238 by @ngadiyak
davert
published 1.4.2 •

Changelog

Source

1.4.2

  • Fixed setting config for plugins (inclunding setting outputDir for allure) by @jplegoff
davert
published 1.4.1 •

Changelog

Source

1.4.1

  • Added plugins option to run-multiple
  • Minor output fixes
  • Added Type Definition for Helper class by @Akxe
  • Fixed extracing devault extension in generators by @Akxe
davert
published 1.4.0 •

Changelog

Source

1.4.0

  • Allure Reporter Integration. Full inegration with Allure Server. Get nicely looking UI for tests,including steps, nested steps, and screenshots. Thanks Natarajan Krishnamurthy @krish for sponsoring this feature.
  • Plugins API introduced. Create custom plugins for CodeceptJS by hooking into event dispatcher, and using promise recorder.
  • Official CodeceptJS plugins added:
    • stepByStepReport - creates nicely looking report to see test execution as a slideshow. Use this plugin to debug tests in headless environment without recording a video.
    • allure - Allure reporter added as plugin.
    • screenshotOnFail - saves screenshot on fail. Replaces similar functionality from helpers.
    • retryFailedStep - to rerun each failed step.
  • [Puppeteer] Fix executeAsyncScript unexpected token by @jonathanz
  • Added override option to run-multiple command by @svarlet
davert
published 1.3.3 •

Changelog

Source

1.3.3

davert
published 1.3.2 •

Changelog

Source

1.3.2

  • Interactve Shell improvements for pause()
    • Added next command for step-by-step debug when using pause().
    • Use After(pause); in a to start interactive console after last step.
  • [Puppeteer] Updated to Puppeteer 1.6.0
    • Added waitForRequest to wait for network request.
    • Added waitForResponse to wait for network response.
  • Improved TypeScript definitions to support custom steps and page objects. By @xt1
  • Fixed XPath detection to accept XPath which starts with ./ by @BenoitZugmeyer
davert
published 1.3.1 •

Changelog

Source

1.3.1

  • BDD-Gherkin: Fixed running async steps.
  • [Puppeteer] Fixed process hanging for 30 seconds. Page loading timeout default via getPageTimeout set 0 seconds.
  • [Puppeteer] Improved displaying client-side console messages in debug mode.
  • [Puppeteer] Fixed closing sessions in restart:false mode for multi-session mode.
  • [Protractor] Fixed grabPopupText to not throw error popup is not opened.
  • [Protractor] Added info on using 'direct' Protractor driver to helper documentation by @xt1.
  • [WebDriverIO] Added a list of all special keys to WebDriverIO helper by @davertmik and @xt1.
  • Improved TypeScript definitions generator by @xt1
davert
published 1.3.0 •

Changelog

Source

1.3.0

Basic feature file:

Feature: Business rules
  In order to achieve my goals
  As a persona
  I want to be able to interact with a system

  Scenario: do anything in my life
    Given I need to open Google

Step definition:

const I = actor();

Given('I need to open Google', () => {
  I.amOnPage('https://google.com');
});

Run it with --features --steps flag:

codeceptjs run --steps --features

  • Brekaing Chnage run command now uses relative path + test name to run exactly one test file.

Previous behavior (removed):

codeceptjs run basic_test.js

Current behavior (relative path to config + a test name)

codeceptjs run tests/basic_test.js

This change allows using auto-completion when running a specific test.


  • Nested steps output enabled for page objects.
    • to see high-level steps only run tests with --steps flag.
    • to see PageObjects implementation run tests with --debug.
  • PageObjects simplified to remove _init() extra method. Try updated generators and see updated guide.
  • [Puppeteer] Multiple sessions enabled. Requires Puppeteer >= 1.5
  • [Puppeteer] Stability improvement. Waits for for load event on page load. This strategy can be changed in config:
    • waitForNavigation config option introduced. Possible options: load, domcontentloaded, networkidle0, networkidle2. See Puppeteer API
    • getPageTimeout config option to set maximum navigation time in milliseconds. Default is 30 seconds.
    • waitForNavigation method added. Explicitly waits for navigation to be finished.
  • [WebDriverIO][Protractor][Puppeteer][Nightmare] Possible BC grabTextFrom unified. Return a text for single matched element and an array of texts for multiple elements.
  • [Puppeteer]Fixed resizeWindow by @sergejkaravajnij
  • [WebDriverIO][Protractor][Puppeteer][Nightmare] waitForFunction added. Waits for client-side JavaScript function to return true by @GREENpoint.
  • [Puppeteer] waitUntil deprecated in favor of waitForFunction.
  • Added filter function to DataTable.
  • Send non-nested array of files to custom parallel execution chunking by @mikecbrant.
  • Fixed invalid output directory path for run-multiple by @mikecbrant.
  • [WebDriverIO] waitUntil timeout accepts time in seconds (as all other wait* functions). Fix by @truesrc.
  • [Nightmare] Fixed grabNumberOfVisibleElements to work similarly to seeElement. Thx to @stefanschenk and Jinbo Jinboson.
  • [Protractor] Fixed alert handling error with message 'no such alert' by @truesrc.
davert
published 1.2.1 •

Changelog

Source

1.2.1

  • Fixed running I.retry() on multiple steps.
  • Fixed parallel execution wih chunks.
  • [Puppeteer] Fixed grabNumberOfVisibleElements to return 0 instead of throwing error if no elements are found.
davert
published 1.2.0 •

Changelog

Source

1.2.0

  • [WebDriverIO][Protractor]Multiple Sessions. Run several browser sessions in one test. Introduced session command, which opens additional browser window and closes it after a test.
Scenario('run in different browsers', (I) => {
  I.amOnPage('/hello');
  I.see('Hello!');
  session('john', () => {
    I.amOnPage('/bye');
    I.dontSee('Hello');
    I.see('Bye');
  });
  I.see('Hello');
});
  • Parallel Execution by @sveneisenschmidt. Run tests in parallel specifying number of chunks:
"multiple": {
  "parallel": {
    // run in 2 processes
    "chunks": 2,
    // run all tests in chrome
    "browsers": ["chrome"]
  },
}
  • Locator Builder. Write complex locators with simplest API combining CSS and XPath:
// select 'Edit' link inside 2nd row of a table
locate('//table')
  .find('tr')
  .at(2)
  .find('a')
  .withText('Edit');
  • Dynamic configuration to update helpers config per test or per suite.
  • Added event.test.finished which fires synchronously for both failed and passed tests.
  • [WebDriverIO][Protractor][Nightmare][Puppeteer] Full page screenshots on failure disabled by default. See [issue#1600. You can enabled them with fullPageScreenshots: true, however they may work unstable in Selenium.
  • within blocks can return values. See updated documentation.
  • Removed doublt call to _init in helpers. Fixes issue #1036
  • Added scenario and feature configuration via fluent API:
Feature('checkout')
  .timeout(3000)
  .retry(2);

Scenario('user can order in firefox', (I) => {
  // see dynamic configuration
}).config({ browser: 'firefox' })
  .timeout(20000);

Scenario('this test should throw error', (I) => {
  // I.amOnPage
}).throws(new Error);
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc