KS
Killer-Skills

tunit — how to use tunit how to use tunit, tunit setup guide, tunit alternative, tunit vs Playwright, headless Blazor component library, TUnit testing with Playwright, running TUnit tests, tunit install, what is tunit

v1.0.0
GitHub

About this Skill

Ideal for .NET Core Agents requiring efficient test execution and reliable testing with Playwright tunit is a headless Blazor component library that uses TUnit with Playwright for testing purposes.

Features

Runs TUnit tests with Playwright for reliable testing
Supports running all tests with a single command using `dotnet run`
Allows running tests with limited parallelism using `--maximum-parallel-tests` flag
Stores tests in the `tests/SummitUI.Tests.Playwright/` directory
Utilizes `dotnet run` command for test execution

# Core Topics

AndreHogberg AndreHogberg
[5]
[1]
Updated: 2/11/2026

Quality Score

Top 5%
36
Excellent
Based on code quality & docs
Installation
SYS Universal Install (Auto-Detect)
Cursor IDE Windsurf IDE VS Code IDE
> npx killer-skills add AndreHogberg/summit-ui/tunit

Agent Capability Analysis

The tunit MCP Server by AndreHogberg is an open-source Categories.community integration for Claude and other AI agents, enabling seamless task automation and capability expansion. Optimized for how to use tunit, tunit setup guide, tunit alternative.

Ideal Agent Persona

Ideal for .NET Core Agents requiring efficient test execution and reliable testing with Playwright

Core Value

Empowers agents to run comprehensive tests with TUnit and Playwright, utilizing headless Blazor component libraries for efficient test execution and supporting limited parallelism to prevent system overload

Capabilities Granted for tunit MCP Server

Running automated tests with Playwright
Executing tests with limited parallelism to prevent system overload
Debugging Blazor component libraries with TUnit

! Prerequisites & Limits

  • Requires .NET Core environment
  • Dependent on Playwright for testing
  • Limited parallelism recommended to prevent system overload
Project
SKILL.md
3.1 KB
.cursorrules
1.2 KB
package.json
240 B
Ready
UTF-8

# Tags

[No tags]
SKILL.md
Readonly

Running TUnit Tests

This project uses TUnit with Playwright for testing. Tests are located in tests/SummitUI.Tests.Playwright/.

Run All Tests

bash
1dotnet run --project tests/SummitUI.Tests.Playwright

Run Tests with Limited Parallelism (Recommended)

To prevent system overload when running Playwright tests, limit parallel test execution:

bash
1# Run with maximum 1 parallel test (sequential) 2dotnet run --project tests/SummitUI.Tests.Playwright -- --maximum-parallel-tests 1 3 4# Run with maximum 8 parallel tests 5dotnet run --project tests/SummitUI.Tests.Playwright -- --maximum-parallel-tests 8

Run Tests with Filters

TUnit uses --treenode-filter with path pattern: /assembly/namespace/class/test

Filter by class name:

bash
1dotnet run --project SummitUI.Tests.Playwright -- --treenode-filter '/*/*/ClassName/*'

Filter by exact test name:

bash
1dotnet run --project SummitUI.Tests.Playwright -- --treenode-filter '/*/*/*/TestName'

Examples:

bash
1# Run all Select accessibility tests 2dotnet run --project tests/SummitUI.Tests.Playwright -- --treenode-filter '/*/*/SelectAccessibilityTests/*' 3 4# Run specific test by name 5dotnet run --project tests/SummitUI.Tests.Playwright -- --treenode-filter '/*/*/*/Trigger_ShouldHave_RoleCombobox' 6 7# Run tests matching pattern (wildcard in test name) 8dotnet run --project tests/SummitUI.Tests.Playwright -- --treenode-filter '/*/*/*/Keyboard*' 9 10# Run all tests in namespace 11dotnet run --project tests/SummitUI.Tests.Playwright -- --treenode-filter '/*/SummitUI.Tests.Playwright/*/*'

Run Tests in Debug Mode

When a debugger is attached, Playwright will run in debug mode (PWDEBUG=1) automatically via the Hooks.cs setup.

View Test Output

Add --report flags for different output formats:

bash
1# Console output with details 2dotnet run --project tests/SummitUI.Tests.Playwright -- --output-format console-detailed 3 4# Generate TRX report 5dotnet run --project tests/SummitUI.Tests.Playwright -- --report-trx

Flakiness Mitigation

The test project includes several features to reduce flakiness:

  1. Automatic Retries: Tests are automatically retried up to 2 times on failure ([Retry(2)] in GlobalSetup.cs)
  2. Fully Sequential Execution: All tests run sequentially via [assembly: NotInParallel] in GlobalSetup.cs
  3. Server Readiness Check: Hooks.cs waits for the Blazor server to be fully ready before tests start
  4. Extended Timeouts: Configured via tunit.json for longer test and hook timeouts

Project Structure

  • GlobalSetup.cs - Assembly-level test configuration (retries, parallelism)
  • Hooks.cs - Test session setup/teardown (starts Blazor server)
  • BlazorWebApplicationFactory.cs - WebApplicationFactory for hosting the test server
  • tunit.json - TUnit configuration file
  • *AccessibilityTests.cs - Accessibility test classes inheriting from PageTest

Test Conventions

  • Tests inherit from TUnit.Playwright.PageTest to get Page access
  • Use [Before(Test)] for per-test setup
  • Use [Before(TestSession)] / [After(TestSession)] for session-wide setup
  • Access the running server via Hooks.ServerUrl

Related Skills

Looking for an alternative to tunit or building a Categories.community AI Agent? Explore these related open-source MCP Servers.

View All

widget-generator

Logo of f
f

widget-generator is an open-source AI agent skill for creating widget plugins that are injected into prompt feeds on prompts.chat. It supports two rendering modes: standard prompt widgets using default PromptCard styling and custom render widgets built as full React components.

149.6k
0
Design

chat-sdk

Logo of lobehub
lobehub

chat-sdk is a unified TypeScript SDK for building chat bots across multiple platforms, providing a single interface for deploying bot logic.

73.0k
0
Communication

zustand

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
Communication

data-fetching

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
Communication