CC-Testframework

TypeScript-based test framework with built-in conventions for Web, Desktop, and Mobile.


What is CC-Testframework?

CC-Testframework is an end-to-end testing framework for Web, Desktop, and Mobile applications. It builds on Playwright for Web and Appium for Desktop and Mobile — but that’s just the foundation. On top of it you get:

  • A three-layer file structure that separates the framework, your app-specific helpers, and your test cases
  • Pre-built routines for the most common actions (clicks, form-fills, dialog handling, file/PDF utilities, OTP, credential management)
  • An AI Agent for test authoring — describe what you want in plain language, the agent generates test steps that fit your project’s conventions
  • Self-healing locators — when the UI changes and a selector breaks, the framework recovers automatically and writes the fix back into your code
  • A visual Inspector — pick elements across Web, Desktop, and Mobile through a browser UI; the framework turns them into ready-to-use locators
  • Bilingual step descriptions — tests can be authored once and shown to testers in the language they read best
  • A stable public API with semver-disciplined releases via npm + GitHub Packages

You scaffold a self-contained pm/ project with a single command, install its dependencies, and start writing test cases against your application — your repo’s outer root stays untouched.

Who is this for?

CC-Testframework is built for teams that want to spend their time on what to test — not on how to build the infrastructure around it. You’ll feel right at home if:

  • Your team is starting a new E2E test suite and wants a proven foundation instead of a green-field scaffolding project
  • Your team is already running Playwright and finds itself re-inventing the same patterns across projects (folder structure, action helpers, assertions, wait strategies)
  • You’re evaluating cross-platform testing — Web plus Desktop plus Mobile — and want one consistent stack instead of three separate frameworks
  • You want a productive path for your manual testers too — they can describe what they need in words, and the AI Agent turns those descriptions into working code

Newcomers get productive quickly through the templates and the Quickstart. Experienced testers benefit from API consistency across projects.

What makes it different?

The value shows up in how much less friction you experience day-to-day compared to a hand-built Playwright wrapper.

  • From install to first green test in under an hour — templates, config, and a working example app come pre-wired; no framework-scaffolding week required
  • Tests that survive UI changes — self-healing catches broken selectors, proposes a fix, and (opt-in) writes it back so it persists across runs; less time firefighting flaky suites after each frontend release
  • AI writes conformant code, not soup — the built-in agent generates test steps that automatically follow your project’s naming, signature, and locator conventions; reviews are shorter because there is no style drift to clean up
  • One stack, three platforms — the same conventions, API surface, and reporting apply to Web, Desktop, and Mobile; onboarding a new tester means learning the framework once
  • Predictable evolution — semver-disciplined releases with a bilingual changelog and an established migration story; upgrades are boring, which is exactly what you want from your test infrastructure
  • Reviewable by design — three-layer file structure and enforced conventions keep PR reviews focused on business logic instead of style debates

You stay on well-known foundations (Playwright, Appium) — the framework adds a consistent, opinionated layer on top without locking you out of the underlying tools.

Where to start

The rows below follow the natural path from a fresh install to a green business-flow test:

If you want to … Go to
Install and verify your environment in 15 minutes Quickstart
Understand the three-layer structure Concepts
Register your Application-Under-Test with one CLI command Scaffold a New App
Manual registration, Electron, Mobile, or wiring in a hand-built App Add a New App — full guide
Model screen elements as Controls Add Controls
Compose tester-facing TestSteps Build TestSteps
Learn the step-naming and re-export conventions and compose a TestCase Writing Your First TestCase
Run a test and debug a failure Run and Debug
Leave the AUT open between runs while debugging Persistent Debug Session
Set up automatic locator repair Self-Healing Locators
Run your TestCases in a CI pipeline CI Integration
Write a test step that isn’t automated yet Custom Steps
Understand the file/naming conventions the pre-commit hook checks Skeleton Conventions
Show step descriptions in a tester’s own language Step-Description Localization
Store API keys, test-account passwords, and other secrets securely Credential Management
Read a stored test-account password inside a TestCase Credential Management — TS_GetPassword
Interact with files, shell, registry, and system info OS App
Transfer files over SFTP or FTP/FTPS FTP App
Verify a signup mail, OTP, or confirmation link Email App
Run a ready-made TestCase against a shipped example app Demo Web App
Troubleshoot setup issues FAQ
Browse the curated API API Reference

💡 Upgrading from before v0.22.0? The OS, FTP, and Utilities Apps’ TestSteps dropped their leading refId/pageLogName/sectionName arguments — see the migration notes in OS App, FTP App, and Credential Management.

💡 Upgrading from before v0.24.0? The scaffolded project layout moved under a single pm/ folder, with three folders renumbered and reference screenshots relocated — see Concepts — Migrating to v0.24.0.

💡 Upgrading from before v0.25.0? pm/ became a self-contained npm project — package.json, tsconfig.json, playwright.config.ts, and .npmrc moved from your repo’s outer root into pm/ itself, and npm install/npx playwright test now run from inside pm/ — see Concepts — Migrating to v0.25.0.

License and commercial use

CC-Testframework is licensed under the Open Code License by itsbusiness AG. After acquiring a license, the licensee may install, use, modify the source code for internal use, and integrate it into their own products — but not redistribute or develop a competing product. Full terms in the LICENSE file shipped with each release.

For license inquiries, pricing, or commercial support: 📧 sales@itsbusiness.ch

itsbusiness AG · Bern · Switzerland