У меня есть приложение wpf с простым окном, которое показывает текст в текстовом поле, связанный со свойством ViewModel. Когда я запускаю приложение, я вижу текст в текстовом поле, но когда я выполняю тест на основе белого цвета, у меня появляются случайные результаты:
- в большинстве случаев он не связан и тест не пройден.
- иногда он связан (я вижу текст в окне, выделенный белым), но белый выдает исключение, когда код хочет получить окно.
- иногда (очень мало) это работает.
Код, который я пытаюсь выполнить, таков:
<Window x:Class="Sample.Tests.Wpf.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow"
Height="350"
Width="525">
<Grid>
<TextBox Height="23"
HorizontalAlignment="Left"
Margin="22,19,0,0"
Name="name"
Text="{Binding Path=CountryName}"
VerticalAlignment="Top"
Width="120" />
</Grid>
</Window>
Код позади:
namespace Sample.Tests.Wpf
{
public partial class MainWindow
{
public MainWindow()
{
InitializeComponent();
Loaded += delegate { DataContext = new MainWindowViewModel
{
CountryName = "Argentina"
};
};
}
}
}
и тест выглядит так:
var app = Application.Launch("Sample.Tests.Wpf.exe");
var window = app.GetWindow("MainWindow");
Assert.IsNotNull(window);
var textbox = window.Get<TextBox>("name");
Assert.AreEqual("Argentina", textbox.Text);
Есть идеи?