Parikshan

The Parikshan ecosystem provides a unified, cross-platform end-to-end (E2E) testing framework for Compose Multiplatform.

It is designed with a Zero-Pollution philosophy, ensuring that your production application remains clean of testing infrastructure while providing a powerful, intent-based DSL for UI automation.

Architecture

Parikshan is divided into several specialized modules:

Module Description
parikshan-core The shared communication protocol and smart selector resolution engine.
parikshan-client The developer-facing DSL and cross-platform drivers (Android, iOS, Wasm, Desktop).
parikshan-server The in-app orchestration server that bridges Compose semantics to the test runner.

Core Principles

  • Customer Obsessed: The DSL is designed to be readable and straightforward, focusing on user intent (e.g., click("Login")) rather than implementation details.

  • AI Ready: The APIs are semantically named and well-documented, allowing AI agents to understand and generate tests with minimal context.

  • Pillar Parity: Parikshan provides a consistent experience across all 4 major platforms supported by Compose Multiplatform.

All modules:

Link copied to clipboard

The client module is the primary entry point for developers. it provides the end-to-end (E2E) testing DSL and the platform-specific drivers that orchestrate test execution.

Link copied to clipboard

The core module contains the shared logic that powers the entire Parikshan ecosystem. It is a pure Kotlin Multiplatform module with zero external platform dependencies.

Link copied to clipboard

The server module provides the bridge that lives inside your application during a test run. It is responsible for exposing Compose semantics to the external test runner.