If a Contributor is a member of WebApps, there is no need to complete any license forms. However, if a Contributor is not a member of WebApps, the Contributor must grant permission to distribute their contribution under these two licenses, and this requires completing the W3C's license grant form.
Test Repository Structure
The WG uses the W3C's web-platform-tests repository on GitHub for its tests.
- The repository:
- Mirror Root:
The structure of the repository, is:
specificationis a short name of a specification e.g. XMLHttpRequest, WebWorkers
sectionis up to three level deep sections of the spec where the test belongs. NOTE: some tests do not use the section subdirectories.
If the test folder for the specification you're writing a test for uses the sections, you should too.
All tests that exist in the test repository are considered approved and reviewed. You can find current submissions by looking at the open pull requests of the repository.
Test Case Requirements
The group has agreed that all tests need to be written in the following manner:
- If a test is a visual test (not API specific) a Reference Test (aka RefTest) must be created. Note that -ref must be added to the testcase name to identify the reference page. For some information on RefTests, see:
The tests should preferably include the metadata:
<link rel="author" title="Name of Author" href="mailto: or http://"/> <link rel="help" href="http://example.com/relevant-spec#section"/> <meta name="assert" content="The lines of what the test asserts"/>
Test Reviews and Approval
@TBD: what is a test review; how are they done; when are they done, etc.; requirements for test approval; glean info from http://www.w3.org/2008/webapps/wiki/Approval?
Test reviews are done by making a Pull Request to the main web-platform-tests/master on GitHub. Follow the guide at Test the Web Forward for more information.
If you are a member in WebApps, and would like to be able to merge Pull Requests after a successful review. You should ask one of the W3C staffers to put your GitHub account into the team. Good candidates are Robin (darobin), Tobie (tobie) and Mike (MikeSmith).
How to Submit a New Test - The Short Version
The way to contribute is just the usual GitHub way:
- Fork the GitHub repository (and make sure you're still relatively in sync with it if you forked a while ago)
- Create a branch for your changes,
git checkout -b submission/your-name
- Make your changes
- Push that to your GitHub repository
- Send in a pull request based on the above
You might get asked about completing W3C's license grant form if your employer is not already a member and you have not done so before. Someone will review your test and you might have to do some changes based on that review.
When the pull request is accepted the test(s) are approved and will be merged into the repository.
You are also welcome to ping the public-webapps-testsuite mailing list for any reason. Such as explicitly asking for review, discuss or announce your submission.
How to Submit New Tests - The Long Version
GitHub itself has a nice long help document explaining how to contribute to projects.
If you are brand new to Git and GitHub, you should probably read the getting started guide from the start. It's nice and friendly. The GitHub help pages has lots of other great information and guides. And for everything else you are welcome to send an email to the WG's
public-webapps-testsuite e-mail list (archive).