Skip to content

Commit 51da4a8

Browse files
committed
chore(dotnet-maui): add integration tests
1 parent 578403c commit 51da4a8

File tree

10 files changed

+1270
-0
lines changed

10 files changed

+1270
-0
lines changed

.github/workflows/dotnet-maui-browserstack.yml

Lines changed: 452 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
3+
<PropertyGroup>
4+
<TargetFramework>net9.0</TargetFramework>
5+
<ImplicitUsings>enable</ImplicitUsings>
6+
<Nullable>enable</Nullable>
7+
<IsPackable>false</IsPackable>
8+
<IsTestProject>true</IsTestProject>
9+
<RootNamespace>DittoMauiTasksApp.UITests</RootNamespace>
10+
</PropertyGroup>
11+
12+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
13+
<DefineConstants>$(DefineConstants);DEBUG</DefineConstants>
14+
</PropertyGroup>
15+
16+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
17+
<DefineConstants>$(DefineConstants);RELEASE</DefineConstants>
18+
</PropertyGroup>
19+
20+
<ItemGroup>
21+
<!-- Core testing packages -->
22+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.11.1" />
23+
<PackageReference Include="xunit" Version="2.9.2" />
24+
<PackageReference Include="xunit.runner.visualstudio" Version="2.8.2">
25+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
26+
<PrivateAssets>all</PrivateAssets>
27+
</PackageReference>
28+
<PackageReference Include="coverlet.collector" Version="6.0.2">
29+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
30+
<PrivateAssets>all</PrivateAssets>
31+
</PackageReference>
32+
33+
<!-- MAUI Testing packages - with explicit version -->
34+
<PackageReference Include="Microsoft.Maui.Controls" Version="9.0.0" />
35+
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.1" />
36+
37+
<!-- Microsoft.Maui.TestFramework is not available - using Appium directly -->
38+
<!-- <PackageReference Include="Microsoft.Maui.TestFramework" Version="9.0.0" /> -->
39+
<!-- <PackageReference Include="Microsoft.Maui.Testing" Version="9.0.0" /> -->
40+
<!-- <PackageReference Include="Microsoft.Maui.Appium" Version="9.0.0" /> -->
41+
42+
<!-- Appium WebDriver for cross-platform UI testing -->
43+
<PackageReference Include="Appium.WebDriver" Version="5.1.0" />
44+
<PackageReference Include="Selenium.WebDriver" Version="4.27.0" />
45+
<PackageReference Include="Selenium.Support" Version="4.27.0" />
46+
47+
<!-- BrowserStack specific packages -->
48+
<PackageReference Include="BrowserStack.Appium" Version="1.0.0" Condition="Exists('BrowserStack.Appium')" />
49+
</ItemGroup>
50+
51+
<ItemGroup>
52+
<!-- Test configuration files -->
53+
<None Include="appsettings.json" CopyToOutputDirectory="PreserveNewest" />
54+
<None Include="browserstack.conf.json" CopyToOutputDirectory="PreserveNewest" />
55+
</ItemGroup>
56+
57+
<!-- BrowserStack specific build targets -->
58+
<Target Name="PrepareForBrowserStack" BeforeTargets="Build">
59+
<Message Text="Preparing UI tests for BrowserStack execution" Importance="high" />
60+
</Target>
61+
62+
<!-- Test output settings -->
63+
<PropertyGroup>
64+
<TestResults>TestResults</TestResults>
65+
<VSTestResultsDirectory>$(TestResults)</VSTestResultsDirectory>
66+
</PropertyGroup>
67+
68+
</Project>

0 commit comments

Comments
 (0)