Add complete integration test suite

Backend Integration Tests:
- Create IntegrationTestBase class with WebApplicationFactory
- AuthIntegrationTests: Registration, login, validation tests (5 tests)
- EventsIntegrationTests: CRUD operations, authorization tests (8 tests)

Frontend-Backend Integration (E2E):
- Install Playwright with Chromium
- Create playwright.config.ts with configuration
- Auth E2E tests: login/register page visibility, navigation
- Event List E2E tests: page display
- Navigation E2E tests: main page navigation flow

Total Integration Tests:
- Backend: 13 tests covering Auth and Events
- E2E: 6 tests covering UI flows
This commit is contained in:
Denis Urs Rudolph
2026-04-08 20:37:51 +02:00
parent 3421818d41
commit 13c9c8aa68
9 changed files with 1138 additions and 4 deletions
+51
View File
@@ -0,0 +1,51 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.5.2.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "backend", "backend", "{1AE8ACA6-933B-BF2A-3671-3E2EAC007D16}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{0AB3BF05-4346-4AA6-1389-037BE0695223}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RacePlannerApi", "backend\RacePlannerApi.csproj", "{27AF3BD7-30A1-6835-9192-7CE37DC352E7}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "backend.Tests", "backend\backend.Tests\backend.Tests.csproj", "{65E5F452-669A-36C7-E613-B0E59DB60AD6}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "integration", "integration", "{28A6993C-471E-82FE-7D9E-AD3B1EC22BD9}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "backend", "backend", "{4A476A78-F17B-EE5B-E9F7-D8462CF56313}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "backend.Tests.Integration", "tests\integration\backend\backend.Tests.Integration.csproj", "{CDAB5585-211E-F212-F1C9-05CB383433AE}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{27AF3BD7-30A1-6835-9192-7CE37DC352E7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{27AF3BD7-30A1-6835-9192-7CE37DC352E7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{27AF3BD7-30A1-6835-9192-7CE37DC352E7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{27AF3BD7-30A1-6835-9192-7CE37DC352E7}.Release|Any CPU.Build.0 = Release|Any CPU
{65E5F452-669A-36C7-E613-B0E59DB60AD6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{65E5F452-669A-36C7-E613-B0E59DB60AD6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{65E5F452-669A-36C7-E613-B0E59DB60AD6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{65E5F452-669A-36C7-E613-B0E59DB60AD6}.Release|Any CPU.Build.0 = Release|Any CPU
{CDAB5585-211E-F212-F1C9-05CB383433AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CDAB5585-211E-F212-F1C9-05CB383433AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CDAB5585-211E-F212-F1C9-05CB383433AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CDAB5585-211E-F212-F1C9-05CB383433AE}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{27AF3BD7-30A1-6835-9192-7CE37DC352E7} = {1AE8ACA6-933B-BF2A-3671-3E2EAC007D16}
{65E5F452-669A-36C7-E613-B0E59DB60AD6} = {1AE8ACA6-933B-BF2A-3671-3E2EAC007D16}
{28A6993C-471E-82FE-7D9E-AD3B1EC22BD9} = {0AB3BF05-4346-4AA6-1389-037BE0695223}
{4A476A78-F17B-EE5B-E9F7-D8462CF56313} = {28A6993C-471E-82FE-7D9E-AD3B1EC22BD9}
{CDAB5585-211E-F212-F1C9-05CB383433AE} = {4A476A78-F17B-EE5B-E9F7-D8462CF56313}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {CC24DFB3-989B-426F-A826-6946A04B67ED}
EndGlobalSection
EndGlobal