* Improve format and clarity of the docs [ci skip] While this change produces a lot of git noise by enacting what seems like an arbitrary linewrap on most of the files in the documentation it will result in better version control and tracking of the changes in the documentation. For example, as it currently stands, if one was to make a PR to move a comma in a sentence because each paragraph in most of the files is on a single line, that small change would look in the git history like the author had modified the entire paragraph. In reality, this author just moved a comma. This change also includes a significant number of modifications to the more article-esque docs. Many of these docs were written in a sort of stream-of-conciousness and aren't as easy to read as they could be. Hopefully this is the first of several readability changes. If we could get these docs to a more accessible reading level, we would probably see an increase in contributions. :) * Delegate markdown wrapping to Prettier * Add linewrapping explanation in the docs [ci skip]
2.1 KiB
| title | items | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Testing/QA Guide |
|
We use the following testing tools:
- RSpec for testing the Rails backend
- Capybara with webdrivers for acceptance testing
- guard-rspec for automated testing
- Jest for testing the frontend
- jest-axe for detecting basic a11y regressions
- preact-render-spy for testing Preact components
- SimpleCov for tracking overall test coverage on the backend
We strive to provide tests for each pull request that adds new features or fixes a bug. Ideally, we test the functionality of the frontend and the backed.
If you'd like to help us improve our test coverage, we recommend checking out our total coverage and writing tests for selected files based on SimpleCov's test coverage results. You can also check out Code Climate summary which includes the test coverage.
If you're new to writing tests in general or with Rails, we recommend reading about testing with Rails, RSpec, and Capybara first.
Continuous Integration & Continuous Deployment
We are using Travis for CI and CD. Travis will run a build (in an isolated environment for testing) for every push to this repository.
Keep in mind that a passing build does not necessarily mean the project won't run into any issues. Strive to write good tests for the code you wish to contribute.
Travis will deploy your pull request to production after CI passes and a member of the DEV team has approved it.
Our test suite is not perfect and sometimes a re-run is needed.