]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/e2e/wdio.main.conf.ts
Improve e2e workflow and add doc
[github/Chocobozzz/PeerTube.git] / client / e2e / wdio.main.conf.ts
1 export const config = {
2 //
3 // ====================
4 // Runner Configuration
5 // ====================
6 //
7 //
8 // ==================
9 // Specify Test Files
10 // ==================
11 // Define which test specs should run. The pattern is relative to the directory
12 // from which `wdio` was called.
13 //
14 // The specs are defined as an array of spec files (optionally using wildcards
15 // that will be expanded). The test for each spec file will be run in a separate
16 // worker process. In order to have a group of spec files run in the same worker
17 // process simply enclose them in an array within the specs array.
18 //
19 // If you are calling `wdio` from an NPM script (see https://docs.npmjs.com/cli/run-script),
20 // then the current working directory is where your `package.json` resides, so `wdio`
21 // will be called from there.
22 //
23 specs: [
24 './src/**/*.e2e-spec.ts'
25 ],
26 // Patterns to exclude.
27 exclude: [
28 // 'path/to/excluded/files'
29 ],
30 //
31 // ===================
32 // Test Configurations
33 // ===================
34 // Define all options that are relevant for the WebdriverIO instance here
35 //
36 // Level of logging verbosity: trace | debug | info | warn | error | silent
37 logLevel: 'info',
38 //
39 // Set specific log levels per logger
40 // loggers:
41 // - webdriver, webdriverio
42 // - @wdio/browserstack-service, @wdio/devtools-service, @wdio/sauce-service
43 // - @wdio/mocha-framework, @wdio/jasmine-framework
44 // - @wdio/local-runner
45 // - @wdio/sumologic-reporter
46 // - @wdio/cli, @wdio/config, @wdio/utils
47 // Level of logging verbosity: trace | debug | info | warn | error | silent
48 // logLevels: {
49 // webdriver: 'info',
50 // '@wdio/appium-service': 'info'
51 // },
52 //
53 // If you only want to run your tests until a specific amount of tests have failed use
54 // bail (default is 0 - don't bail, run all tests).
55 bail: 0,
56 //
57 // Set a base URL in order to shorten url command calls. If your `url` parameter starts
58 // with `/`, the base url gets prepended, not including the path portion of your baseUrl.
59 // If your `url` parameter starts without a scheme or `/` (like `some/path`), the base url
60 // gets prepended directly.
61 baseUrl: 'http://localhost:9001',
62 //
63 // Default timeout for all waitFor* commands.
64 waitforTimeout: 5000,
65 //
66 // Default timeout in milliseconds for request
67 // if browser driver or grid doesn't send response
68 connectionRetryTimeout: 120000,
69 //
70 // Default request retries count
71 connectionRetryCount: 3,
72
73 // Framework you want to run your specs with.
74 // The following are supported: Mocha, Jasmine, and Cucumber
75 // see also: https://webdriver.io/docs/frameworks
76 //
77 // Make sure you have the wdio adapter package for the specific framework installed
78 // before running any tests.
79 framework: 'mocha',
80 //
81 // The number of times to retry the entire specfile when it fails as a whole
82 specFileRetries: 2,
83 //
84 // Delay in seconds between the spec file retry attempts
85 // specFileRetriesDelay: 0,
86 //
87 // Whether or not retried specfiles should be retried immediately or deferred to the end of the queue
88 // specFileRetriesDeferred: false,
89 //
90 // Test reporter for stdout.
91 // The only one supported by default is 'dot'
92 // see also: https://webdriver.io/docs/dot-reporter
93 reporters: [ 'spec' ],
94
95 //
96 // Options to be passed to Mocha.
97 // See the full list at http://mochajs.org/
98 mochaOpts: {
99 ui: 'bdd',
100 timeout: 60000
101 },
102
103 autoCompileOpts: {
104 autoCompile: true,
105
106 tsNodeOpts: {
107 project: require('path').join(__dirname, './tsconfig.json')
108 }
109 },
110
111 before: function () {
112 require('expect-webdriverio')
113 require('./src/commands/upload')
114 }
115 } as Partial<WebdriverIO.Config>