Playwright Power Platform Toolkit
Enterprise Test Automation Framework for Microsoft Power PlatformA production-ready, comprehensive testing framework library for Power Platform applications built on Playwright. Supports Canvas Apps, Model-Driven Apps, and Power Platform services with robust authentication, API testing, accessibility testing, and intelligent reporting capabilities.
Features
Written in TypeScript with full type definitions
Intuitive API for common Power Platform interactions
Built-in Microsoft authentication support
Use only what you need
Works seamlessly with Playwright Test
Comprehensive guides and API documentation
Quick Start
npm install playwright-power-platform-toolkit @playwright/testimport { test } from '@playwright/test';
import { AppProvider, AppType, AppLaunchMode } from 'playwright-power-platform-toolkit';
test('my first power apps test', async ({ page }) => {
const provider = new AppProvider(page);
await provider.launch({
app: { id: 'your-app-id' },
type: AppType.Canvas,
mode: AppLaunchMode.Play,
});
await provider.click({ name: 'SubmitButton' });
});Documentation
Getting Started
Learn the basics and set up your first Power Platform test
Canvas Apps
Test Canvas Apps with intuitive controls and interactions
Model-Driven Apps
Automate Model-Driven Apps with entity forms and grids
Authentication
Handle Microsoft authentication and user sessions
API Reference
Complete API documentation for all classes and methods
Advanced Usage
Advanced patterns, best practices, and optimization tips
Why Playwright Power Platform Toolkit?
Traditional Approach ❌
// Complex, brittle selectors
await page.locator('[data-control-name="Button1_1"]').click();
await page.locator('input[aria-label="Text input"]').fill('value');With This Toolkit ✅
// Simple, maintainable code
await provider.click({ name: 'SubmitButton' });
await provider.fill({ name: 'TextInputName' }, 'value');Key Capabilities
Pre-built page objects for Power Apps Portal, Canvas Apps, and Model-Driven Apps with robust locators
AppLauncherFactory and AppProvider for clean, maintainable test architecture
Built-in utilities for testing Power Platform APIs with authentication and validation helpers
WCAG compliance validation using Axe-core integration
Record and replay API interactions for debugging and test generation
Structured logging with colored output for better test visibility
Project Status
This project is actively maintained and used in production environments. Contributions are welcome!
Resources
Architecture
Understand the design patterns and architecture
Report Issues
Found a bug? Let us know on GitHub
Contribute
Help improve the toolkit with pull requests
License
MIT © Deepak Kamboj