Skip to content

deps(renovate): update rstest to v0.11.6 - #80

Merged
elliotcourant merged 1 commit into
mainfrom
renovate/rstest
Aug 13, 2026
Merged

deps(renovate): update rstest to v0.11.6#80
elliotcourant merged 1 commit into
mainfrom
renovate/rstest

Conversation

@renovate

@renovate renovate Bot commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
@rstest/adapter-rslib (source) 0.10.60.11.6 age confidence
@rstest/browser (source) 0.10.60.11.6 age confidence
@rstest/browser-react (source) 0.10.60.11.6 age confidence
@rstest/core (source) 0.10.60.11.6 age confidence

Release Notes

web-infra-dev/rstest (@​rstest/adapter-rslib)

v0.11.6

Compare Source

Highlights
Faster DOM test environments with prebundling

Rstest can now prebundle supported jsdom and happy-dom test environments once and share the bundle across workers.

In a local 100-file / 1,000-test benchmark on Apple Silicon with Node.js 24 and four fork workers:

Environment Native Prebundle Improvement
jsdom 30.0.1 16.99s 10.57s 37.8%
happy-dom 20.11.1 6.35s 2.98s 53.0%

The feature is opt-in and falls back to native loading when prebundling is unsupported or fails. These benchmark results are directional and not a performance guarantee. See #​1663.

import { defineConfig } from '@rstest/core';

export default defineConfig({
  testEnvironment: {
    name: 'jsdom', // or 'happy-dom'
    prebundle: 'auto',
  },
});
What's Changed
New Features 🎉
Bug Fixes 🐞
Refactor 🔨
Document 📖
Other Changes

Full Changelog: web-infra-dev/rstest@v0.11.5...v0.11.6

v0.11.5

Compare Source

What's Changed

New Features 🎉
Performance 🚀
Bug Fixes 🐞
Document 📖
Other Changes

Full Changelog: web-infra-dev/rstest@v0.11.4...v0.11.5

v0.11.4

Compare Source

What's Changed

New Features 🎉
Bug Fixes 🐞
Document 📖
Other Changes

Full Changelog: web-infra-dev/rstest@v0.11.3...v0.11.4

v0.11.3

Compare Source

What's Changed

New Features 🎉
  • feat(browser): support module mocking, includeSource and console format parity by @​fi3ework in #​1580
Performance 🚀
Bug Fixes 🐞
Document 📖
Other Changes

Full Changelog: web-infra-dev/rstest@v0.11.2...v0.11.3

v0.11.2

Compare Source

Highlights

Your last run now makes the next one faster

Rstest remembers how each test file did last run, and uses it two ways.

Failures come back first — no flag needed. Previously failed files now run first, so a broken test shows up at the start instead of the end. Slowest files go out first too, trimming wall-clock time on CI where workers are scarce.

Or skip the passing files with --onlyFailures. When one change breaks several files, -f runs only what failed, so each fix-and-verify round stays short. Once nothing is failing, the next -f goes back to the full suite instead of running nothing.

npx rstest -f

# onlyFailures: running 2 of 14 test files (12 deselected).

See onlyFailures for details.

Rsbuild plugins can now read your Rstest config

getRstestConfig gives an Rsbuild plugin the resolved config for the environment it's building — the project's settings merged with run-level ones like pool, reporters, and shard. Useful for tailoring plugin behavior per project.

import type { RsbuildPlugin } from '@rsbuild/core';
import type { RstestExposeAPI } from '@rstest/core';

export const myPlugin = (): RsbuildPlugin => ({
  name: 'read-rstest-config',
  setup(api) {
    const rstestConfig = api
      .useExposed<RstestExposeAPI>('rstest')
      ?.getRstestConfig();

    console.log(rstestConfig?.name);
  },
});

See Read Rstest config in Rsbuild plugins for details.

What's Changed

New Features 🎉
Performance 🚀
Bug Fixes 🐞
Refactor 🔨
Document 📖
Other Changes

New Contributors

Full Changelog: web-infra-dev/rstest@v0.11.1...v0.11.2

v0.11.1

Compare Source

Highlights

New Playwright integration package

This release adds @rstest/playwright, providing Playwright-style browser automation fixtures such as browser, context, page, request, and serve, plus Playwright-style async assertions integrated with Rstest expect.

import { expect, test } from '@rstest/playwright';

test('home page', async ({ page, serve }) => {
  const { url } = await serve('./dist/index.html');

  await page.goto(url);
  await expect(page.locator('h1')).toHaveText('Home');
});
Rsbuild plugins can modify Rstest config

Rsbuild plugins can now use the exposed Rstest API to modify the current Rstest project config through modifyRstestConfig, making it easier for Rsbuild ecosystem plugins to customize test behavior in a scoped and validated way.

import type { RsbuildPlugin } from "@rsbuild/core";
import type { RstestExposeAPI } from "@rstest/core";

export const myPlugin = (): RsbuildPlugin => ({
  name: "my-plugin",
  setup(api) {
    if (api.context.callerName === "rstest") {
      const rstestApi = api.useExposed<RstestExposeAPI>("rstest");

      rstestApi?.modifyRstestConfig((config) => {
        config.source = {
          ...config.source,
          define: {
            ...(config.source?.define || {}),
            __TEST_TARGET__: JSON.stringify("node"),
          },
        };
      });
    }
  },
});
Task metadata support

Rstest now supports metadata for tests, suites, file results, and custom reporters. You can initialize metadata through TestOptions.meta, inherit suite metadata in descendant suites/tests, update it at runtime via context.task.meta or hook ctx.meta, and consume it from reporter hooks.

import { afterAll, describe, test } from '@rstest/core';

// File-level metadata is exposed on TestFileResult.meta.
afterAll((ctx) => {
  ctx.meta.fileHook = 'afterAll';
});

describe('checkout', { meta: { owner: 'platform', area: 'payment' } }, () => {
  test('submits order', { meta: { caseId: 'checkout-001' } }, (ctx) => {
    // Test-level metadata inherits suite metadata and can be updated at runtime.
    ctx.task.meta.mutantId = process.env.STRYKER_ACTIVE_MUTANT;
  });
});

Custom reporters can read the resolved metadata from case, suite, and file results:

import type { Reporter } from '@rstest/core';

const metadataReporter: Reporter = {
  onTestCaseStart(test) {
    console.log('case start metadata', test.meta);
  },
  onTestCaseResult(result) {
    console.log('case result metadata', result.meta);
  },
  onTestSuiteResult(result) {
    console.log('suite metadata', result.meta);
  },
  onTestFileResult(result) {
    console.log('file metadata', result.meta);
  },
};

What's Changed

New Features 🎉
Bug Fixes 🐞
Document 📖
Other Changes

Full Changelog: web-infra-dev/rstest@v0.11.0...v0.11.1

v0.11.0

Compare Source

What's Changed

Breaking Changes 🍭
New Features 🎉
Performance 🚀
  • perf(coverage-v8): optimize V8 AST coverage conversion by @​9aoy in #​1490
  • perf(coverage-v8): resolve raw coverage in main process by @​9aoy in #​1501
Bug Fixes 🐞
Document 📖
Other Changes

New Contributors

Full Changelog: web-infra-dev/rstest@v0.10.6...v0.11.0


Configuration

📅 Schedule: (in timezone America/Chicago)

  • Branch creation
    • "before 6am on monday"
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@github-actions

Copy link
Copy Markdown
Contributor

Rsdoctor Bundle Diff Analysis

📊 Quick Summary
Project Total Size Change
dist 33.3 KB 0

Generated by Rsdoctor GitHub Action

@renovate
renovate Bot force-pushed the renovate/rstest branch 3 times, most recently from 3238406 to b4ba363 Compare August 12, 2026 09:52
@renovate renovate Bot changed the title deps(renovate): update rstest to v0.11.5 deps(renovate): update rstest to v0.11.6 Aug 12, 2026
@renovate
renovate Bot force-pushed the renovate/rstest branch 2 times, most recently from 6b45088 to 03cc4da Compare August 12, 2026 18:16
@renovate
renovate Bot force-pushed the renovate/rstest branch from 03cc4da to 1ae2dad Compare August 13, 2026 16:11
@elliotcourant
elliotcourant merged commit 236c875 into main Aug 13, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant