Skip to main content

Test262

Test262 is the primary oracle for initiative I1.

Goals

  1. Run the in-scope language suite on Linux in CI
  2. Publish pass / fail / skip counts on every mainline run
  3. Treat in-scope failures as blockers once a feature is marked complete
  4. Keep skips enumerated (never silent)

Suite selection

The exact include/exclude globs live with the harness in the scripty repository (path TBD when harness lands). Document the globs here when they exist.

Harness requirements

Reporting

Every CI run should emit: Store the report as a CI artifact. Optionally publish a summary on the docs status page later.

Failure triage policy

Blocker definition

An open blocker is any in-scope test that:
  • fails, or
  • is skipped — every selected in-scope test must pass, so move valid exclusions out of the selected set via a matrix + scope update rather than skipping them in place

Local developer loop

The public Test262 harness and scripty conformance commands do not exist yet. Runnable commands and filters (by feature or path) will be documented here once the harness lands. Until then, track progress through the Roadmap and the feature matrix.

Relationship to smoke tests

Existing testdata/smoke/*.js tests stay. They are fast feedback, not the conformance oracle.

When Test262 is not enough

Some edition features need additional directed tests (e.g. GC stress, multi-isolate). Add them as scripty unit tests and still keep a matrix pointer. Never replace Test262 with only hand-written smokes for the I1 exit bar.