-
Notifications
You must be signed in to change notification settings - Fork 3.2k
/
Copy pathcypress-schema.json
180 lines (180 loc) · 7.79 KB
/
cypress-schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
{
"title": "JSON schema for https://cypress.io test runner cypress.json file. Details at https://on.cypress.io/configuration",
"type": "object",
"properties": {
"baseUrl" : {
"type": "string",
"description": "Url used as prefix for cy.visit() or cy.request() command’s url. Example http://localhost:3030 or https://test.my-domain.com"
},
"env": {
"type": "object",
"description": "Any values to be set as environment variables",
"body": {}
},
"ignoreTestFiles": {
"type": ["string", "array"],
"items": {
"type": "string"
},
"description": "A String or Array of glob patterns used to ignore test files that would otherwise be shown in your list of tests. Cypress uses minimatch with the options: {dot: true, matchBase: true}. We suggest using http://globtester.com to test what files would match."
},
"numTestsKeptInMemory": {
"type": "number",
"default": 50,
"description": "The number of tests for which snapshots and command data are kept in memory. Reduce this number if you are experiencing high memory consumption in your browser during a test run."
},
"port": {
"type": "number",
"default": null,
"description": "Port used to host Cypress. Normally this is a randomly generated port"
},
"reporter": {
"type": "string",
"default": "spec",
"description": "The reporter used when running headlessly or in CI. See https://on.cypress.io/reporters"
},
"reporterOptions": {
"type": "object",
"default": null,
"description": "The reporter options used. Supported options depend on the reporter. See https://on.cypress.io/reporters#Reporter-Options"
},
"screenshotOnHeadlessFailure": {
"type": "boolean",
"default": true,
"description": "Whether to take a screenshot on test failure when running headlessly or in CI"
},
"watchForFileChanges": {
"type": "boolean",
"default": true,
"description": "Whether Cypress will watch and restart tests on test file changes"
},
"defaultCommandTimeout": {
"type": "number",
"default": 4000,
"description": "Time, in milliseconds, to wait until most DOM based commands are considered timed out"
},
"execTimeout": {
"type": "number",
"default": 60000,
"description": "Time, in milliseconds, to wait for a system command to finish executing during a cy.exec() command"
},
"pageLoadTimeout": {
"type": "number",
"default": 60000,
"description": "Time, in milliseconds, to wait for page transition events or cy.visit(), cy.go(), cy.reload() commands to fire their page load events"
},
"requestTimeout": {
"type": "number",
"default": 5000,
"description": "Time, in milliseconds, to wait for an XHR request to go out in a cy.wait() command"
},
"responseTimeout": {
"type": "number",
"default": 30000,
"description": "Time, in milliseconds, to wait until a response in a cy.request(), cy.wait(), cy.fixture(), cy.getCookie(), cy.getCookies(), cy.setCookie(), cy.clearCookie(), cy.clearCookies(), and cy.screenshot() commands"
},
"fileServerFolder": {
"type": "string",
"default": "root project folder",
"description": "Path to folder where application files will attempt to be served from"
},
"fixturesFolder": {
"type": ["string", "boolean"],
"default": "cypress/fixtures",
"description": "Path to folder containing fixture files (Pass false to disable)"
},
"integrationFolder": {
"type": "string",
"default": "cypress/integration",
"description": "Path to folder containing integration test files"
},
"pluginsFile": {
"type": ["string", "boolean"],
"default": "cypress/plugins/index.js",
"description": "Path to plugins file. (Pass false to disable)"
},
"screenshotsFolder": {
"type": "string",
"default": "cypress/screenshots",
"description": "Path to folder where screenshots will be saved from cy.screenshot() command or after a headless or CI run’s test failure"
},
"supportFile": {
"type": ["script", "boolean"],
"default": "cypress/support/index.js",
"description": "Path to file to load before test files load. This file is compiled and bundled. (Pass false to disable)"
},
"videosFolder": {
"type": "string",
"default": "cypress/videos",
"description": "Path to folder where videos will be saved after a headless or CI run"
},
"screenshotOnHeadlessFailure": {
"type": "boolean",
"default": true,
"description": "Whether Cypress will automatically take a screenshot when a test fails when running tests headlessly or in CI."
},
"trashAssetsBeforeHeadlessRuns": {
"type": "boolean",
"default": true,
"description": "Whether Cypress will trash assets within the screenshotsFolder and videosFolder before headless test runs."
},
"videoCompression": {
"type": "number",
"default": 32,
"description": "The quality setting for the video compression, in Constant Rate Factor (CRF). The value can be false to disable compression or a value between 0 and 51, where a lower value results in better quality (at the expense of a higher file size)."
},
"videoRecording": {
"type": "boolean",
"default": true,
"description": "Whether Cypress will record a video of the test run when running headlessly."
},
"videoUploadOnPasses": {
"type": "boolean",
"default": true,
"description": "Whether Cypress will upload the video to the Dashboard even if all tests are passing. This applies only when recording your runs to the Dashboard. Turn this off if you’d like the video uploaded only when there are failing tests."
},
"chromeWebSecurity": {
"type": "boolean",
"default": true,
"description": "Whether Chrome Web Security for same-origin policy and insecure mixed content is enabled. Read more about this at https://on.cypress.io/web-security"
},
"userAgent": {
"type": "string",
"default": null,
"description": "Enables you to override the default user agent the browser sends in all request headers. User agent values are typically used by servers to help identify the operating system, browser, and browser version. See User-Agent MDN Documentation for example user agent values here: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent"
},
"blacklistHosts": {
"type": ["string", "array"],
"items": {
"type": "string"
},
"default": null,
"description": "A String or Array of hosts that you wish to block traffic for. Please read the notes for examples on using this https://on.cypress.io/configuration#blacklistHosts"
},
"viewportHeight": {
"type": "number",
"default": 660,
"description": "Default height in pixels for the application under tests’ viewport (Override with cy.viewport() command)"
},
"viewportWidth": {
"type": "number",
"default": 1000,
"description": "Default width in pixels for the application under tests’ viewport. (Override with cy.viewport() command)"
},
"animationDistanceThreshold": {
"type": "number",
"default": 5,
"description": "The distance in pixels an element must exceed over time to be considered animating"
},
"waitForAnimations": {
"type": "boolean",
"default": true,
"description": "Whether to wait for elements to finish animating before executing commands"
},
"projectId": {
"type": "string",
"default": null,
"description": "A 6 character string to identify this project with Dashboard service. See https://on.cypress.io/dashboard-service#Identification"
}
}
}