UNPKG

@serenity-js/jasmine

Version:

Serenity/JS test runner adapter for Jasmine, enabling the use of the Screenplay Pattern in Jasmine-based test suites and leveraging Serenity/JS reporting capabilities

86 lines 2.9 kB
import type { JasmineReporter } from '../jasmine/index.js'; /** * Configuration object that will be passed to the JasmineRunner. * * ## Learn more * - [Jasmine configuration](https://jasmine.github.io/setup/nodejs.html) * * @group Configuration */ export interface JasmineConfig { /** * Spec dir is used as a prefix for all spec files and helpers */ specDir?: string; /** * A list of paths to helper files that should be loaded and executed before the `requires` and the `specs`. * Accepts relative and absolute paths as well as glob expressions. * * #### Learn more * - [Jasmine tutorial](https://jasmine.github.io/tutorials/react_with_npm) */ helpers?: string[]; /** * A list of paths to files that should be required after the `helpers`, but before the `specs`. * The paths need to be compatible with Node `require`. */ requires?: string[]; /** * Whether or not the tests should be executed in a pseudo-random order. */ random?: boolean; /** * Used to exclude any test scenarios which name doesn't match the pattern from the run. */ grep?: string | RegExp; /** * Inverts 'grep' matches, defaults to `false` */ invertGrep?: boolean; /** * Receives the full name of a test scenario and returns `true` * for those that should be executed. * * Takes precedence over `grep`. */ specFilter?: (specName: string) => boolean; /** * The randomisation seed that will be used to determine the pseudo-random order of execution, * if `random` is set to `true` */ seed?: string; /** * Sets the global `jasmine.DEFAULT_TIMEOUT_INTERVAL`, * which defines the default number of milliseconds Jasmine will wait for an asynchronous spec to complete. * * #### Learn more * - [Jasmine default timeout interval](https://jasmine.github.io/api/edge/jasmine#.DEFAULT_TIMEOUT_INTERVAL) */ defaultTimeoutInterval?: number; /** * A list of Jasmine reporters to be added to the test runner. * * Useful for situations like configuring ReportPortal, because you cannot use `jasmine.addReporter()` in the Protractor config. * * **Note:** reporters must be instantiated before adding them to the configuration. * * #### Using ReportPortal with Protractor and Jasmine * * ```js * // protractor.conf.js * const AgentJasmine = require('@reportportal/agent-js-jasmine') * const agent = new AgentJasmine(require('./reportportalConf')) * // ... * jasmineNodeOpts: { * // ... * reporters: [ agent.getJasmineReporter() ], * } * * afterLaunch:() => { * return agent.getExitPromise(); * }, * ``` */ reporters?: JasmineReporter[]; } //# sourceMappingURL=JasmineConfig.d.ts.map