AntonioGanci

Il blog di Antonio Ganci
posts - 201, comments - 420, trackbacks - 31

Scrivere Acceptance Test per una applicazione Wpf - Seconda parte

Se avete seguito i passi del post precedente e provate a lanciare il test dovrebbe aprirsi una finestra che si chiude quasi istantaneamente.

Proviamo ora a simulare il click ad un pulsante. Per prima cosa aggiungiamo il controllo alla main window ricordandoci di dargli un nome (nel nostro caso buttonControl). Lo xaml dovrebbe essere qualcosa di analogo:

<Window x:Class="WPFAndNUnit.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">
    <Canvas>
        <Button Name="buttonControl" >A button</Button>
    </Canvas>
</Window>

 

Ora possiamo usare il metodo FindName per trovare il nostro button e quindi modifichiamo il test come segue:

[Test]  
public void ShowTheMainWindow()
{
    var window = new MainWindow();
    window.Show();

    var button = (Button) window.FindName("buttonControl");

    Assert.That(button, Is.Not.Null);
}

 

Se eseguiamo il test dovrebbe passare altrimenti ricontrollate i passi precedenti.

Per simulare il click al pulsante usiamo il metodo RaiseEvent come segue:

button.RaiseEvent(new RoutedEventArgs(Button.ClickEvent));

 

Se proviamo ad aggiungere un comportamento all'evento click del pulsante verifichiamo che venga eseguito correttamente.

In sinstesi la tecnica consiste in: dare un nome ai controlli con cui vogliamo interagire nel test e usare il metodo RaiseEvent per simulare le azioni dell'utente.

Print | posted on mercoledì 25 agosto 2010 15:34 | Filed Under [ Tips Extreme Programming ]

Comments have been closed on this topic.

Powered by:
Powered By Subtext Powered By ASP.NET