Home

Playwright Power Platform Toolkit

Enterprise Test Automation Framework for Microsoft Power Platform

A 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

Type-Safe:

Written in TypeScript with full type definitions

Easy to Use:

Intuitive API for common Power Platform interactions

Authentication:

Built-in Microsoft authentication support

Modular:

Use only what you need

Test-Ready:

Works seamlessly with Playwright Test

Well-Documented:

Comprehensive guides and API documentation

Quick Start

npm install playwright-power-platform-toolkit @playwright/test
import { 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

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

Page Object Models:

Pre-built page objects for Power Apps Portal, Canvas Apps, and Model-Driven Apps with robust locators

Factory & Provider Patterns:

AppLauncherFactory and AppProvider for clean, maintainable test architecture

API Testing:

Built-in utilities for testing Power Platform APIs with authentication and validation helpers

Accessibility Testing:

WCAG compliance validation using Axe-core integration

API Recording:

Record and replay API interactions for debugging and test generation

Test Logging:

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

License

MIT © Deepak Kamboj


GitHub: deepakkamboj/playwright-power-platform