Rendering thresholds must be measured in a real browser, apart from the test series that guard behaviour. A separate Vitest project runs scripts/banc/**/*.banc.js in headless Chromium at 1366 x 700, scale 1, without frame-rate limit, CPU throttling set per run; the statistics module gives medians and spreads over repeated samples. Outputs go to an ignored folder. make banc and npm run banc name the entry; its orchestrator comes with the bench measures. Checked: red first; 3410 node tests green from the index; the bench project runs its harness. --- FR --- [ADD] banc : harnais Chromium sans tête, statistiques, entrée make banc Les seuils de rendu se mesurent dans un vrai navigateur, à part des séries qui gardent le comportement. Un projet Vitest distinct joue scripts/banc/**/*.banc.js dans Chromium sans tête à 1366 × 700, facteur 1, sans limite d'images, le ralentissement du processeur réglé par lancement ; le module de statistiques rend médianes et dispersions sur des mesures répétées. Les sorties vont dans un dossier ignoré. make banc et npm run banc nomment l'entrée ; son orchestrateur vient avec les mesures du banc. Vérifié : rouge d'abord ; 3410 node verts depuis l'index ; le projet du banc joue son harnais. Assisted-by: Claude Opus 5.5
29 lines
1.2 KiB
JavaScript
29 lines
1.2 KiB
JavaScript
// © 2026 TechnoLibre (http://www.technolibre.ca)
|
|
// License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl)
|
|
|
|
// Le banc de mesure (§ 19.10), un projet de Vitest hors des trois séries de
|
|
// vitest.config.js (§ 14.4, § 14.8) : il ne se lance que par sa propre
|
|
// commande, npm run banc, qui passe cette configuration à Vitest. Comme le
|
|
// projet navigateur, il étend vite.config.js : un module s'y résout comme
|
|
// dans le livrable. Le projet lui-même — fichiers joués, cadre, cadence,
|
|
// délais — se décrit dans scripts/banc/projet.js ; ce fichier n'y ajoute que
|
|
// le fournisseur Playwright. Le rapporteur des plafonds de la série
|
|
// surveillée (test/rapporteur.js) n'a pas cours ici : le banc n'a pas de
|
|
// budget de durée.
|
|
import { defineConfig } from 'vitest/config';
|
|
import { playwright } from '@vitest/browser-playwright';
|
|
import { optionsBanc, projetBanc } from './scripts/banc/projet.js';
|
|
|
|
const projet = projetBanc();
|
|
|
|
export default defineConfig({
|
|
test: {
|
|
reporters: ['default'],
|
|
projects: [
|
|
{
|
|
extends: './vite.config.js',
|
|
test: { ...projet, browser: { ...projet.browser, provider: playwright(optionsBanc(process.env)) } },
|
|
},
|
|
],
|
|
},
|
|
});
|