Skip to content

Weave Cypress Cloud, UI Coverage, and Cypress Accessibility more closely into the narrative of the docs #5947

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 108 commits into from
Oct 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
108 commits
Select commit Hold shift + click to select a range
e096abb
Add new announcement
jennifer-shehane Oct 10, 2024
b0677f5
Update why cypress to more closely integrate our Cloud features
jennifer-shehane Oct 10, 2024
04d11bc
Fix broken links
jennifer-shehane Oct 10, 2024
f9d19cf
Add videos + images to Why Cypress
jennifer-shehane Oct 10, 2024
f37cd5e
fix link
jennifer-shehane Oct 10, 2024
3934104
Fix some hierarchy
jennifer-shehane Oct 10, 2024
18a16a7
Expand to integrate UI Cov + a11y more fully
jennifer-shehane Oct 10, 2024
57b8c56
Make minor changes to key-diffs and trade-offs doc
jennifer-shehane Oct 10, 2024
ea1abf8
Update docs/guides/overview/key-differences.mdx
jennifer-shehane Oct 16, 2024
b09c25e
Update docs/guides/overview/why-cypress.mdx
jennifer-shehane Oct 16, 2024
3bac7b8
Update docs/guides/overview/why-cypress.mdx
jennifer-shehane Oct 16, 2024
adca5ee
Update docs/guides/overview/why-cypress.mdx
jennifer-shehane Oct 16, 2024
9a12244
Update docs/guides/overview/why-cypress.mdx
jennifer-shehane Oct 16, 2024
07a5967
Update docs/guides/overview/why-cypress.mdx
jennifer-shehane Oct 16, 2024
a605698
Update docs/guides/references/trade-offs.mdx
jennifer-shehane Oct 16, 2024
8c70b23
Move main docs out of 'Guides' and into 'App'
jennifer-shehane Oct 16, 2024
dba4a05
Move Cloud into main nav
jennifer-shehane Oct 16, 2024
bf9aafe
Merge branch 'main' into ga-ui-cov-a11y
jennifer-shehane Oct 16, 2024
0a89009
fix some links
jennifer-shehane Oct 16, 2024
b54cc78
Fix some links
jennifer-shehane Oct 16, 2024
effa80e
Fix more links
jennifer-shehane Oct 16, 2024
47a2e27
fix links
jennifer-shehane Oct 16, 2024
68086e9
fix more links
jennifer-shehane Oct 16, 2024
a2a9913
merge a thousand changes of IA
jennifer-shehane Oct 16, 2024
c5e6c15
replace old links with new references
jennifer-shehane Oct 16, 2024
7d27262
hide extra top nav
jennifer-shehane Oct 16, 2024
b445b7d
Linting
jennifer-shehane Oct 16, 2024
b161553
whoops, add back learn
jennifer-shehane Oct 16, 2024
8ad1ec3
fix broken links
jennifer-shehane Oct 16, 2024
5f8153e
fix link
jennifer-shehane Oct 16, 2024
c0c3498
fix broken links + faq styling
jennifer-shehane Oct 16, 2024
e00c733
lint formatting
jennifer-shehane Oct 16, 2024
0f4d86e
Update some more IA and content
jennifer-shehane Oct 17, 2024
0ca045f
More updates
jennifer-shehane Oct 17, 2024
1f7f3c0
Fix links
jennifer-shehane Oct 17, 2024
c1e1dd4
lint
jennifer-shehane Oct 17, 2024
093e367
remove summary
jennifer-shehane Oct 17, 2024
54011b6
Merge changes from gitbook
jennifer-shehane Oct 17, 2024
af4cfc2
Move list of plugins into App nav
jennifer-shehane Oct 17, 2024
831b418
lint
jennifer-shehane Oct 17, 2024
3505896
Add back missing intro for a11y
jennifer-shehane Oct 17, 2024
20610b4
Update faq titles
jennifer-shehane Oct 17, 2024
73201db
Updates for plugins pages
jennifer-shehane Oct 17, 2024
38ad01b
lint
jennifer-shehane Oct 17, 2024
d901dbc
fix links and descriptions
jennifer-shehane Oct 17, 2024
4746b91
lint
jennifer-shehane Oct 17, 2024
8d41964
fix links
jennifer-shehane Oct 17, 2024
1a69883
lint
jennifer-shehane Oct 17, 2024
3d55cec
Move more things - remove examples docs
jennifer-shehane Oct 17, 2024
d5587eb
lint
jennifer-shehane Oct 17, 2024
57a5d82
fix links
jennifer-shehane Oct 17, 2024
f2dea4b
fix some image destimations
jennifer-shehane Oct 17, 2024
9f472b2
remove the info intro
jennifer-shehane Oct 17, 2024
17e5341
lint
jennifer-shehane Oct 17, 2024
0688878
remove autogeneration of sidebars that no longer exist as top nav
jennifer-shehane Oct 17, 2024
6a21572
fix links
jennifer-shehane Oct 17, 2024
2c0fe31
fix links
jennifer-shehane Oct 17, 2024
794006c
fix some images + add CTA for a11y/UI Cov
jennifer-shehane Oct 17, 2024
0009eed
fix more links + remove info
jennifer-shehane Oct 17, 2024
7a6a407
lint
jennifer-shehane Oct 17, 2024
48add3c
fix broken link
jennifer-shehane Oct 17, 2024
509412f
Remove old content
jennifer-shehane Oct 17, 2024
d9117ec
lint
jennifer-shehane Oct 17, 2024
921a0f0
fix links
jennifer-shehane Oct 17, 2024
b0c6f87
Move addon to snippet and add to most pages
jennifer-shehane Oct 17, 2024
6291bec
lint
jennifer-shehane Oct 17, 2024
65b3b9b
few more fixes + utm params
jennifer-shehane Oct 17, 2024
167c034
consolidate install and open commands
jennifer-shehane Oct 17, 2024
0d98eb9
lint
jennifer-shehane Oct 17, 2024
0660def
Add back some infos with new styling
jennifer-shehane Oct 17, 2024
fa6a0f8
lint
jennifer-shehane Oct 17, 2024
d9264a9
Add more info sections
jennifer-shehane Oct 18, 2024
344cc3b
More infos + updates - also merged Web security and cross origin doc
jennifer-shehane Oct 18, 2024
313b112
lint
jennifer-shehane Oct 18, 2024
7b7c826
fix broken link
jennifer-shehane Oct 18, 2024
5bf08e2
fix link
jennifer-shehane Oct 18, 2024
f97e483
hmm
jennifer-shehane Oct 18, 2024
a2c0138
fix the link for reals
jennifer-shehane Oct 18, 2024
cc08efa
more updates
jennifer-shehane Oct 18, 2024
6c56884
lint
jennifer-shehane Oct 18, 2024
25fae77
fix links
jennifer-shehane Oct 18, 2024
77c4b8c
More udpates
jennifer-shehane Oct 18, 2024
a470ecf
lint
jennifer-shehane Oct 18, 2024
a9c2eb2
fix broken links
jennifer-shehane Oct 18, 2024
ff1deb1
fix links
jennifer-shehane Oct 18, 2024
8b592e4
fix links
jennifer-shehane Oct 18, 2024
cf82c40
more changes
jennifer-shehane Oct 18, 2024
a039a98
lint
jennifer-shehane Oct 18, 2024
45ab00d
fix link
jennifer-shehane Oct 18, 2024
8e8b7b2
Add a11y guide and tweak references (#5957)
marktnoonan Oct 20, 2024
3ddf47d
Finish infos on CI pages
jennifer-shehane Oct 21, 2024
59dd834
Update code coverage + IDE with info
jennifer-shehane Oct 21, 2024
a4f5528
lint
jennifer-shehane Oct 21, 2024
3236f94
updates so far
jennifer-shehane Oct 21, 2024
c7c216f
finish page
jennifer-shehane Oct 21, 2024
b831b79
more updates
jennifer-shehane Oct 21, 2024
f34200e
lint
jennifer-shehane Oct 21, 2024
bd5ac63
fix link
jennifer-shehane Oct 21, 2024
d82ec1a
fix capitalization in link
jennifer-shehane Oct 21, 2024
698e371
remove link
jennifer-shehane Oct 21, 2024
93da826
added some more infos
jennifer-shehane Oct 21, 2024
ef52225
add a thousand redirects
jennifer-shehane Oct 21, 2024
56bde79
cleanup
jennifer-shehane Oct 21, 2024
f319d83
lint
jennifer-shehane Oct 21, 2024
565fbdc
another cleanup
jennifer-shehane Oct 21, 2024
cd1ac77
Added some SEO optimizations
jennifer-shehane Oct 21, 2024
560aa7f
linting
jennifer-shehane Oct 21, 2024
a6b42ea
Update docs/cloud/features/smart-orchestration/run-cancellation.mdx
jennifer-shehane Oct 22, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
11 changes: 1 addition & 10 deletions .github/ISSUE_TEMPLATE/documentation_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,12 @@ body:
If you have an idea for a new documentation topic, noticed that
something is not properly documented, or feel that something is
incorrect with the current documentation, you're in the right place!
- type: "input"
id: "subject"
attributes:
label: "Subject"
description:
"What is the subject (guides, api, plugins, examples, faq) of this request?"
placeholder: "Guides"
validations:
required: true
- type: "textarea"
id: "description"
attributes:
label: "Description"
description:
"What about the subject's documentation should be added or changed?"
placeholder: "Update Guides with new 'Migrating to Cypress' page"
placeholder: "Update with new 'Migrating to Cypress' page"
validations:
required: true
2 changes: 0 additions & 2 deletions CODE_OF_CONDUCT.md

This file was deleted.

63 changes: 4 additions & 59 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,6 @@ Thanks for taking the time to contribute! :smile:
- [Pull Requests](#pull-requests)
- [Contributor License Agreement](#contributor-license-agreement)
- [Deployment](#deployment)
- [Trigger workflow build](#trigger-workflow-build)

## Code of Conduct

All contributors are expected to abide by our
[Code of Conduct](https://github.com/cypress-io/cypress/blob/develop/CODE_OF_CONDUCT.md).

## Writing Documentation

Expand All @@ -55,29 +49,23 @@ If you are using VS Code, download the
[MDX extension](https://marketplace.visualstudio.com/items?itemName=unifiedjs.vscode-mdx)
to get full editor support for MDX files.

#### Admonitions

Use [Admonitions](https://docusaurus.io/docs/markdown-features/admonitions) to
grab the reader's attention with a blurb.

#### Images

If you are starting a new page and want to add images, add a new folder to
[`static/img`](/static/img). For example when adding a new "Code Coverage" page
to `guides/tooling`, I have created new folder `assets/img/guides/tooling` and
to `app/tooling`, I have created new folder `assets/img/app/tooling` and
copied an image there called `coverage-object.png`. Within the markdown, I can
include the image using the
[`<DocsImage />` component](/src/components/docs-image).

```jsx
<DocsImage
src="/img/guides/tooling/coverage-object.png"
src="/img/app/tooling/coverage-object.png"
alt="code coverage object"
/>
```

Typically you should include the `alt` and `title` attributes to give the user
more information about the image.
You should always include the `alt` and `title` attributes to ensure the image is accessible and to give the user more information about the image.

#### Videos

Expand Down Expand Up @@ -170,30 +158,6 @@ We also opened an [issue](https://github.com/facebook/docusaurus/issues/7946) to
add this as a feature to Docusaurus, so if this gets implemented this patch can
go away.

### Writing the Changelog

When adding to the [Changelog](/docs/guides/references/changelog.mdx), create a
new section with the title as the version number on top of the previous section.
Be sure to follow the category structure defined below (in this order). Each
bullet point in the list should _always_ be associated to an issue on the
[`cypress`](https://github.com/cypress-io/cypress) repo and link to that issue
(except for Documentation changes).

#### Categories

- **Summary** - If it is a large release, you may write a summary explaining
what the point of this release is (mostly used for breaking releases)
- **Breaking Changes** - The users current implementation of Cypress may break
after updating.
- **Deprecations** - Features have been deprecated, but will not break after
updating.
- **Features** - A new feature
- **Bugfixes** - A bug existed in Cypress and a PR fixed the issue
- **Misc** - Not a feature or bugfix, but work that was done. May be internal
work that was done and associated with an issue
- **Documentation Changes** - our docs were updated based on behavior changes in
release

## Committing Code

### Pull Requests
Expand Down Expand Up @@ -234,9 +198,7 @@ open a pull request (PR) from your repo to the
### Contributor License Agreement

We use a [`cla-assistant.io`](https://cla-assistant.io/) web hook to make sure
every contributor assigns the rights of their contribution to Cypress.io. If you
want to read the CLA agreement, its text is in this
[gist](https://gist.github.com/bahmutov/cf22bc6c6b55219d0f9a76d04981f7ae).
every contributor assigns the rights of their contribution to Cypress.io.

After making a [pull request](#pull-requests), the CLA assistant will add a
review comment. Click on the link and accept the CLA. That's it!
Expand All @@ -246,20 +208,3 @@ review comment. Click on the link and accept the CLA. That's it!
We will try to review and merge pull requests as fast as possible. After
merging, the changes will be made available on the official
[https://docs.cypress.io](https://docs.cypress.io) website.

### Trigger workflow build

Due to CircleCI API limitations, you cannot trigger a workflow build using the
API. Thus if you need to build, test and deploy `your-branch` branch for
example, your best bet is to create an empty GitHub commit in the
[cypress-io/cypress-documentation](https://github.com/cypress-io/cypress-documentation)
repository in the `your-branch` branch. We have added
[make-empty-github-commit](https://github.com/bahmutov/make-empty-github-commit)
as a dev dependency and set it as `make-empty-commit` NPM script in the
[package.json](package.json).

To trigger production rebuild and redeploy, use personal GitHub token and run:

```shell
GITHUB_TOKEN=<your token> npm run make-empty-commit -- --message "trigger deploy" --branch main
```
3 changes: 0 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
# Cypress Documentation [![Discord chat](https://img.shields.io/badge/chat-on%20Discord-brightgreen)](https://on.cypress.io/discord) [![first-timers-only](http://img.shields.io/badge/first--timers--only-friendly-blue.svg)](https://github.com/cypress-io/cypress-documentation/labels/first-timers-only)

The code for Cypress Documentation including Guides, API, Examples, Cypress
Cloud & FAQ found at https://docs.cypress.io.

![Cypress Documentation Preview](/static/img/cypress-docs.png)

## CI status
Expand Down
82 changes: 82 additions & 0 deletions docs/accessibility/changelog.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
---
title: 'Changelog | Cypress Accessibility'
description: 'Stay up to date with the latest features, improvements, and bug fixes for Cypress Accessibility.'
sidebar_label: Changelog
sidebar_position: 200
---

# Changelog

## Week of 9/30/2024

- Cypress Accessibility results are now included in Slack messages alongside test results. [Learn more about our Slack integration here](https://on.cypress.io/slack-integration).

## Week of 9/20/2024

- A minor bugfix was released for score calculations, to fix a scenario where some snapshots could be counted more than once if they appeared in multiple tests. This may result in a small difference in the total score for runs before and after the change.
- Documentation updates to reflect recently released features and capabilities.

## Week of 9/9/2024

- We have introduced the new "Rules" tab for all users. This allows you to more easily review the outcome of all the rules that were tested for, across the entire run, and see which rules have the most failing elements. This also helps you understand the exact effect of any underlying configuration on rule outcomes.
- We have introduced new element statuses, beyond just failures. This allows Cypress Accessibility to surface any inconclusive or "manual review" items from Axe Core, as well as track and display elements whose results were explicitly ignored. Learn more in the [run-level reports](/accessibility/core-concepts/run-level-reports) [Elements section](/accessibility/core-concepts/run-level-reports#Elements).
- Elements ignored by configuration will have results captured, but these results will not affect your score. This ensures you can use filters to peek behind the curtain and understand exactly what is being excluded from a given run's results.
- The Detail View that displays failing elements will now also display inconclusive and (optionally) ignored elements for each rule. Inconclusive and ignored elements have distinct orange and gray icons and highlights respectively.

## Week of 8/19/2024

- iFrames are now supported for accessibility checks. iFrame processing is _opt-in_ for existing customers, but new customers will begin with iFrames enabled and can choose to opt out instead. This is to avoid disrupting existing pipelines, especially because iFrame content is not _always_ something you want to include in your reports.
- Cypress Accessibility results will now appear in [GitHub](https://on.cypress.io/github-integration), [GitLab](https://on.cypress.io/gitlab-integration) and [Bitbucket](https://on.cypress.io/bitbucket-integration) pull request and merge request comments alongside test results. Integrations can be installed and comments can be enabled in Project Settings.

## Week of 8/5/2024

- We now support fetching Accessibility results from CircleCI workflows with the [Results API](/accessibility/results-api).

## Week of 7/29/2024

- Fetching results in Azure and Jenkins is now supported in the new [Results API](/accessibility/results-api), which enables you to programmatically fetch your run's Accessibility results in a CI environment.

## Week of 7/15/2024

- The new [Results API](/accessibility/results-api), which enables you to programmatically fetch your run's Accessibility results in a CI environment, now supports fetching results in GitLab CI workflows.

## Week of 6/24/2024

- We have added the new [Results API](/accessibility/results-api) which enables you to programmatically fetch your run's Accessibility results in a CI environment. This allows you to review the results within CI and to determine if the results are acceptable or need to be addressed before code changes can merge.
- View [configuration information for each run](/accessibility/configuration/overview#Viewing-Configuration-for-a-Run) in the properties tab. There, you'll find the configuration set for the project at the start of the run. This will help you understand what factors might be driving a score change. This helps distinguish config criteria changes from other factors such as changes to your application, tests, Cypress versions, and more.

## Week of 5/20/2024

- Shadow DOM elements are now visible and highlighted in A11y report snapshots. By highlighting shadow DOM elements in snapshots, developers can identify and address all accessibility violations, including those within encapsulated components, thus enhancing the overall accessibility of the web application.
- You can now click directly into the accessibility report from any respective run from the "Latest Runs" page in Cypress Cloud. This improvement streamlines access and navigation to accessibility reports, saving you time and reducing the number of steps needed to view the details.
- We've added the ability to configure and customize your Accessibility report in Project Settings. You can set configuration through our editor equipped with linting and IntelliSense code completion. Control what should be tested or ignored in your score calculations to ensure your team is capturing what's relevant to your organization's goals.

## Week of 4/15/2024

- We've added full depth axe-core® details for each element flagged with an accessibility violation, providing comprehensive context to help developers accurately identify and resolve issues.

## Week of 3/25/2024

- The new Violation Severity Breakdown displays a small bar graph indicating the severity level of accessibility violations across the entire run, or on the level of individual pages or components. This gives users more information at a glance about what pages have the most severe problems, and the overall makeup of their accessibility report. Pages with more severe problems will now be more obvious when scanning the report, helping users decide what pages need more investigation or which pages have the fewest problems.

## Week of 3/18/2024

- You can now refine your Views list by severity or specific rule sets. For instance, isolate pages featuring "Critical" violations only, or focus solely on WCAG 2.1 A violations. If your project has varying levels of accessibility, filtering pages or components with specific types of violations can serve as an initial step to comprehend and prioritize areas with the most severe issues.
- Cypress will now conduct accessibility checks within the Shadow DOM on all runs, expanding the accessibility testing scope.

## Week of 2/25/2024

- We've introduced text filtering so that users can filter the "Views" list by name, making it effortless to search and locate specific items.
- To improve clarity and context, we've also implemented a tooltip-style feature that displays the position of the highlighted elements. This means that when an accessibility violation is reported and is associated with a specific element on the screen, it's a lot easier to locate.

## Week of 1/15/2024

- We've introduced a new feature that streamlines accessibility management - the aggregation of all violations into a single comprehensive report. Look for the "View all" link next to the violations count at the top of the accessibility tab. This will show you all violations detected across an entire run, regardless of what page or component they are detected on.

## Week of 12/31/2023

- Users can now discover and address accessibility violations swiftly by utilizing the newly integrated "Print Elements to Console" button within your browser's developer tools.

## Week of 12/17/2023

- Users can now view a detailed breakdown of the total number of Views (pages and/or components) and Violations detected during a specific run.
4 changes: 4 additions & 0 deletions docs/accessibility/configuration/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"label": "Configuration",
"position": 30
}
32 changes: 32 additions & 0 deletions docs/accessibility/configuration/axe-core-configuration.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
title: 'Axe Core® configuration | Cypress Accessibility'
description: 'Configuration for Axe-Core® rules can be configured.'
sidebar_label: 'Axe Core® configuration'
---

# Axe Core® configuration

<AccessibilityAddon />

Configuration for Axe-Core® rules is available through your Account Executive. We we are happy to have a call with you to dial in your report config to make sure you are getting the most useful reports possible, and we find this onboarding very effective.

In most cases, configuration of these rules as they run in Cypress Cloud isn't needed, because your implementation of any policies about what should "fail a build" is handled using the [Accessibility Results API](/accessibility/results-api), where you have full control over how to parse the results and what rules need to be reacted to. Keeping the results in Cypress Cloud broad helps you to still be able to see and understand all of the accessibility information, even if only a subset of the results would be considered blocking.

**Note.** Certain Axe Core® rules are off by default. Here are the rules that are currently either ignored by configuration, or for which results cannot be detected.

- `Elements must meet minimum color contrast ratio thresholds`
- This is off by default. This is both the slowest rule in the Axe Core® ruleset, and the one that can have the highest percentage of false positives or incomplete checks.
- It does work perfectly in many projects, so we are happy to turn this on for you if requested, so that you can see the results.
- `<video> or <audio> elements must not play automatically`
- Ignored because Test Replay does not yet capture the metadata to check this
- `Delayed refresh under 20 hours must not be used`
- Ignored because Test Replay does not collect the metadata for this

## Component Testing

Cypress Accessibility works great with component testing. In addition the the rules that are off by default, "page-level" rules do not run for component tests, since a component is usually a fragment mounted in an empty page that would not be expected to have things like headings or a `main` element.

## Updates to the Axe Core® library

Updates to the Axe Core® library are released several times each year. While Cypress does not commit to updating our internal Axe Core® version within a specific timeframe, we will always wait at least 30 days before making an update.
Since some updates introduce new rules or address bugs that change how issues are detected, this buffer is intended to give you time to make changes in your use of our [Results API](/accessibility/results-api) if needed. Axe Core® releases can be tracked [in GitHub](https://github.com/dequelabs/axe-core/releases).
Loading