Browse Source

Make integration tests ordered.

ui-automation-test
Steven Kirk 5 years ago
parent
commit
5f551a2dd9
  1. 18
      build/XUnit.props
  2. 1
      tests/Avalonia.IntegrationTests.Win32/Avalonia.IntegrationTests.Win32.csproj
  3. 26
      tests/Avalonia.IntegrationTests.Win32/ButtonTests.cs
  4. 26
      tests/Avalonia.IntegrationTests.Win32/ComboBoxTests.cs
  5. 9
      tests/Avalonia.IntegrationTests.Win32/DefaultCollection.cs
  6. 9
      tests/Avalonia.IntegrationTests.Win32/TestAppCollection.cs

18
build/XUnit.props

@ -1,14 +1,14 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<PackageReference Include="xunit" Version="2.3.0" />
<PackageReference Include="xunit.abstractions" Version="2.0.1" />
<PackageReference Include="xunit.assert" Version="2.3.0" />
<PackageReference Include="xunit.core" Version="2.3.0" />
<PackageReference Include="xunit.extensibility.core" Version="2.3.0" />
<PackageReference Include="xunit.extensibility.execution" Version="2.3.0" />
<PackageReference Include="xunit.runner.console" Version="2.3.0" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.0" />
<PackageReference Include="Xunit.SkippableFact" Version="1.3.6" />
<PackageReference Include="xunit" Version="2.4.1" />
<PackageReference Include="xunit.abstractions" Version="2.0.3" />
<PackageReference Include="xunit.assert" Version="2.4.1" />
<PackageReference Include="xunit.core" Version="2.4.1" />
<PackageReference Include="xunit.extensibility.core" Version="2.4.1" />
<PackageReference Include="xunit.extensibility.execution" Version="2.4.1" />
<PackageReference Include="xunit.runner.console" Version="2.4.1" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.3" />
<PackageReference Include="Xunit.SkippableFact" Version="1.4.13" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
</ItemGroup>
<PropertyGroup>

1
tests/Avalonia.IntegrationTests.Win32/Avalonia.IntegrationTests.Win32.csproj

@ -7,6 +7,7 @@
<ItemGroup>
<PackageReference Include="Appium.WebDriver" Version="4.3.1" />
<PackageReference Include="Xunit.Extensions.Ordering" Version="1.4.5" />
</ItemGroup>
<Import Project="..\..\build\XUnit.props" />

26
tests/Avalonia.IntegrationTests.Win32/ButtonTests.cs

@ -3,17 +3,23 @@ using Xunit;
namespace Avalonia.IntegrationTests.Win32
{
[Collection("IntegrationTestApp collection")]
[Collection("Default")]
public class ButtonTests
{
private WindowsDriver<WindowsElement> _session;
public ButtonTests(TestAppFixture fixture) => _session = fixture.Session;
public ButtonTests(TestAppFixture fixture)
{
_session = fixture.Session;
var tabs = _session.FindElementByAccessibilityId("MainTabs");
var tab = tabs.FindElementByName("Button");
tab.Click();
}
[Fact]
public void DisabledButton()
{
SelectTab();
var button = _session.FindElementByAccessibilityId("DisabledButton");
Assert.Equal("Disabled Button", button.Text);
@ -23,8 +29,6 @@ namespace Avalonia.IntegrationTests.Win32
[Fact]
public void BasicButton()
{
SelectTab();
var button = _session.FindElementByAccessibilityId("BasicButton");
Assert.Equal("Basic Button", button.Text);
@ -34,19 +38,9 @@ namespace Avalonia.IntegrationTests.Win32
[Fact]
public void ButtonWithTextBlock()
{
SelectTab();
var button = _session.FindElementByAccessibilityId("ButtonWithTextBlock");
Assert.Equal("Button with TextBlock", button.Text);
}
private WindowsElement SelectTab()
{
var tabs = _session.FindElementByAccessibilityId("MainTabs");
var tab = tabs.FindElementByName("Button");
tab.Click();
return (WindowsElement)tab;
}
}
}

26
tests/Avalonia.IntegrationTests.Win32/ComboBoxTests.cs

@ -3,17 +3,23 @@ using Xunit;
namespace Avalonia.IntegrationTests.Win32
{
[Collection("IntegrationTestApp collection")]
[Collection("Default")]
public class ComboBoxTests
{
private WindowsDriver<WindowsElement> _session;
public ComboBoxTests(TestAppFixture fixture) => _session = fixture.Session;
public ComboBoxTests(TestAppFixture fixture)
{
_session = fixture.Session;
var tabs = _session.FindElementByAccessibilityId("MainTabs");
var tab = tabs.FindElementByName("ComboBox");
tab.Click();
}
[Fact]
public void UnselectedComboBox()
{
SelectTab();
var comboBox = _session.FindElementByAccessibilityId("UnselectedComboBox");
Assert.Equal(string.Empty, comboBox.Text);
@ -27,8 +33,6 @@ namespace Avalonia.IntegrationTests.Win32
[Fact]
public void SelectedIndex0ComboBox()
{
SelectTab();
var comboBox = _session.FindElementByAccessibilityId("SelectedIndex0ComboBox");
Assert.Equal("Foo", comboBox.Text);
@ -37,19 +41,9 @@ namespace Avalonia.IntegrationTests.Win32
[Fact]
public void SelectedIndex1ComboBox()
{
SelectTab();
var comboBox = _session.FindElementByAccessibilityId("SelectedIndex1ComboBox");
Assert.Equal("Bar", comboBox.Text);
}
private WindowsElement SelectTab()
{
var tabs = _session.FindElementByAccessibilityId("MainTabs");
var tab = tabs.FindElementByName("ComboBox");
tab.Click();
return (WindowsElement)tab;
}
}
}

9
tests/Avalonia.IntegrationTests.Win32/DefaultCollection.cs

@ -0,0 +1,9 @@
using Xunit;
namespace Avalonia.IntegrationTests.Win32
{
[CollectionDefinition("Default")]
public class DefaultCollection : ICollectionFixture<TestAppFixture>
{
}
}

9
tests/Avalonia.IntegrationTests.Win32/TestAppCollection.cs

@ -1,9 +0,0 @@
using Xunit;
namespace Avalonia.IntegrationTests.Win32
{
[CollectionDefinition("IntegrationTestApp collection")]
public class TestAppCollection : ICollectionFixture<TestAppFixture>
{
}
}
Loading…
Cancel
Save