This repository contains the Estate Management User Interface applications and associated test projects.
- EstateManagementUI: Legacy ASP.NET Core web application with Razor Pages (Hydro)
- EstateManagementUI.BlazorServer: Modern Blazor Server application (current/future UI)
- EstateManagementUI.IntegrationTests: Integration tests for the legacy UI using Selenium WebDriver
- EstateManagementUI.BlazorIntegrationTests: Integration tests for the Blazor UI using Playwright (NEW!)
- EstateManagementUI.UITests: Unit tests for UI components
- EstateManagementUI.BusinessLogic.Tests: Unit tests for business logic
The EstateManagementUI.BlazorIntegrationTests project provides comprehensive integration tests for the Blazor Server UI using Microsoft Playwright for browser automation.
Key Features:
- Targets the Blazor Server UI (
EstateManagementUI.BlazorServer) - Uses Playwright for modern, reliable browser automation
- Full Docker infrastructure support for testing
- BDD-style tests using Reqnroll (SpecFlow successor)
See EstateManagementUI.BlazorIntegrationTests/README.md for detailed documentation.
The EstateManagementUI.IntegrationTests project provides integration tests for the legacy UI using Selenium WebDriver. These tests target the old ASP.NET Core application.
The EstateManagementUI.BlazorServer project uses Tailwind CSS for styling. The CSS must be built before running the application.
- .NET 10.0 SDK
- Node.js and npm
The Tailwind CSS is automatically built when you build the project:
cd EstateManagementUI.BlazorServer
dotnet buildThis will:
- Install npm dependencies (if not already installed)
- Build Tailwind CSS from
Styles/app.csstowwwroot/css/app.css - Build the .NET project
cd EstateManagementUI.BlazorServer
dotnet runThe application will be available at https://localhost:5004 (or the configured port).
For active development with auto-rebuild of CSS:
cd EstateManagementUI.BlazorServer
npm run css:watchThis will watch for changes to Tailwind CSS source files and automatically rebuild the CSS.
EstateManagementUI/
├── EstateManagementUI/ # Legacy ASP.NET Core UI
├── EstateManagementUI.BlazorServer/ # Modern Blazor Server UI
├── EstateManagementUI.BusinessLogic/ # Shared business logic
├── EstateManagementUI.ViewModels/ # Shared view models
├── EstateManagementUI.Testing/ # Shared testing utilities
├── EstateManagementUI.IntegrationTests/ # Legacy UI integration tests (Selenium)
├── EstateManagementUI.BlazorIntegrationTests/ # Blazor UI integration tests (Playwright)
├── EstateManagementUI.UITests/ # UI component unit tests
└── EstateManagementUI.BusinessLogic.Tests/# Business logic unit tests