Principle:DevExpress Testcafe Build Pipeline
| Knowledge Sources | |
|---|---|
| Domains | Build_System, Development_Tooling |
| Last Updated | 2026-02-12 12:00 GMT |
Overview
Principle governing the build, compilation, testing, and release pipeline for the TestCafe project using Gulp task orchestration.
Description
TestCafe's build pipeline uses Gulp to orchestrate a multi-stage process: cleaning artifacts, linting source code, compiling TypeScript to JavaScript, bundling client-side scripts with Rollup, generating TypeScript definition files from Mustache templates, compiling LESS stylesheets, running multi-tier test suites (server, client, functional), and building Docker images. The pipeline supports both incremental development builds and full CI/CD releases.
Usage
This principle applies when contributing to the TestCafe project itself, setting up a development environment, or understanding the project's CI/CD workflow.
Theoretical Basis
# Abstract build pipeline stages
Pipeline:
clean → lint → compile → bundle → generate → test → package
compile:
TypeScript (server) → JavaScript (lib/)
LESS (styles) → CSS (lib/client/)
Rollup (client scripts) → IIFE bundles
test:
Server tests (Mocha, Node.js)
Client tests (QUnit, SauceLabs browsers)
Functional tests (Mocha, real browsers)
Docker tests (containerized functional tests)