Testování aplikací pro Windows Store pomocí programových testů uživatelského rozhraní
Použití programové testy uživatelského rozhraní, chcete-li ověřit vaší aplikace pro Windows Store.
Vytvoření jednoduché aplikace pro Windows Store
Pokud chcete spustit programové testy uživatelského rozhraní pro svou aplikaci na základě XAML Windows Store, je nutné nastavit vlastnost jedinečný automatizace, která identifikuje každý ovládací prvek.
Na nástroje nabídce přejděte na možnosti a poté zvolte možnost textový Editor, pak XAMLa nakonec různé.
Zaškrtněte políčko automaticky název interaktivní prvky na vytvoření.
Vytvořte nový projekt pro Windows Store s použitím buď Visual C# nebo Visual Basic šablony založené prázdné XAML.
V Průzkumníku řešení otevřete MainPage.xaml.Z panelu nástrojů přetáhněte ovládací tlačítka a ovládací prvek textové pole na plochu návrháře.
Poklepejte na tlačítko a přidejte následující kód:
private void button_Click_1(object sender, RoutedEventArgs e) { this.textBox.Text = this.button.Name; }
Public NotInheritable Class MainPage Inherits Page Private Sub button_Click(sender As Object, e As RoutedEventArgs) Handles Button.Click Me.textBox.Text = Me.button.Name End Sub End Class
Stisknutím klávesy F5 ke spuštění aplikací pro Windows Store.
Vytvořit a spustit programové testy uživatelského rozhraní pro aplikace pro Windows Store
Vytvořte nový projekt testování pro programové uživatelského rozhraní pro aplikace pro Windows Store.
Zvolte úpravu mapování uživatelského rozhraní pomocí nástroje kříž.
Pomocí nástroje kříž v Tvůrci programové testování uživatelského rozhraní vyberte dlaždici aplikace, klikněte pravým tlačítkem na AutomationId a zvolte možnost hodnotu kopírovat do schránky.Hodnota ve schránce se použije později pro zápis akce ke spuštění aplikace pro testování.
Ve spuštěné aplikace pro Windows Store nástrojem kříž k výběru tlačítka ovládacího prvku a ovládací prvek textové pole.Po přidání každý ovládací prvek, vyberte přidání ovládacího prvku uživatelského rozhraní ovládacího prvku mapy tlačítko na panelu nástrojů programové testování Tvůrce uživatelského rozhraní.
Zvolte generování kódu tlačítko na panelu nástrojů programové testování Tvůrce uživatelského rozhraní a poté zvolte možnost generovat k vytvoření kódu pro změny v mapě ovládací prvek uživatelského rozhraní.
Klikněte na tlačítko a nastavit hodnotu do textového pole.
Pomocí nástroje kříž vyberte ovládací prvek textové pole a potom vyberte Text vlastnost.
Přidáte assertion.Bude použita v testu chcete-li ověřit, zda je zadaná hodnota správná.
Přidejte a generování kódu pro kontrolní výraz.
Visual C#
V Průzkumníku řešení otevřete soubor UIMap.Designer.cs Chcete-li zobrazit, přidat kód pro metodu vyhodnocení a ovládací prvky.
Visual Basic
V Průzkumníku řešení otevřete soubor CodedUITest1.vb a v kódu, metoda test CodedUITestMethod1(), klikněte pravým tlačítkem na volání metody kontrolní výraz, který byl automaticky přidán Me.UIMap.AssertMethod1() a zvolte možnost přejít na definici.Tím otevřete soubor UIMap.Designer.vb v editoru kódu, můžete zobrazit zobrazení přidat kód pro metodu vyhodnocení a ovládací prvky.
Upozornění Neprovádějte žádné změny souboru UIMap.designer.cs nebo UIMap.Designer.vb přímo.Pokud v takovém případě budou změny provedené v souboru přepsána pokaždé, když je generována test.
Assert – metoda
public void AssertMethod1() { #region Variable Declarations XamlEdit uITextBoxEdit = this.UIApp1Window.UITextBoxEdit; #endregion // Verify that the 'Text' property of 'textBox' text box equals 'button' Assert.AreEqual(this.AssertMethod3ExpectedValues.UITextBoxEditText, uITextBoxEdit.Text); }
Public Sub AssertMethod1() Dim uITextBoxEdit As XamlEdit = Me.UIApp2Window.UITextBoxEdit 'Verify that the 'Text' property of 'textBox' text box equals 'button' Assert.AreEqual(Me.AssertMethod1ExpectedValues.UITextBoxEditText, uITextBoxEdit.Text) End Sub
Ovládací prvky
#region Properties public XamlButton UIButtonButton { get { if ((this.mUIButtonButton == null)) { this.mUIButtonButton = new XamlButton(this); #region Search Criteria this.mUIButtonButton.SearchProperties[XamlButton.PropertyNames.AutomationId] = "button"; this.mUIButtonButton.WindowTitles.Add("App1"); #endregion } return this.mUIButtonButton; } } public XamlEdit UITextBoxEdit { get { if ((this.mUITextBoxEdit == null)) { this.mUITextBoxEdit = new XamlEdit(this); #region Search Criteria this.mUITextBoxEdit.SearchProperties[XamlEdit.PropertyNames.AutomationId] = "textBox"; this.mUITextBoxEdit.WindowTitles.Add("App1"); #endregion } return this.mUITextBoxEdit; } } #endregion #region Fields private XamlButton mUIButtonButton; private XamlEdit mUITextBoxEdit; #endregion
#Region "Properties" Public ReadOnly Property UIButtonButton() As XamlButton Get If (Me.mUIButtonButton Is Nothing) Then Me.mUIButtonButton = New XamlButton(Me) Me.mUIButtonButton.SearchProperties(XamlButton.PropertyNames.AutomationId) = "button" Me.mUIButtonButton.WindowTitles.Add("App2") End If Return Me.mUIButtonButton End Get End Property Public ReadOnly Property UITextBoxEdit() As XamlEdit Get If (Me.mUITextBoxEdit Is Nothing) Then Me.mUITextBoxEdit = New XamlEdit(Me) Me.mUITextBoxEdit.SearchProperties(XamlEdit.PropertyNames.AutomationId) = "textBox" Me.mUITextBoxEdit.WindowTitles.Add("App2") End If Return Me.mUITextBoxEdit End Get End Property #End Region #Region "Fields" Private mUIButtonButton As XamlButton Private mUITextBoxEdit As XamlEdit #End Region
V Průzkumníku řešení otevřete soubor CodedUITest1.cs nebo CodedUITest1.vb.Nyní můžete přidat kód do metody CodedUTTestMethod1 pro potřeby akce ke spuštění testu pomocí přidaných UIMap ovládacích prvků:
Spuštění aplikace pro Windows Store pomocí vlastnosti ID automatizace zkopírované do schránky, dříve:
XamlWindow.Launch("8ebca7c4-effe-4c86-9998-068daccee452_cyrqexqw8cc7c!App")
XamlWindow myAppWindow = XamlWindow.Launch("7254db3e-20a7-424e-8e05-7c4dabf4f28d_cyrqexqw8cc7c!App");
Přidání gesto klepněte na tlačítko:
Gesture.Tap(this.UIMap.UIApp1Window. UIButtonButton);
Gesture.Tap(Me.UIMap.UIApp2Window. UIButtonButton)
Ověřit, zda volání metody vyhodnocení, která byla automaticky vygenerována pochází po spuštění aplikace a klepněte na možnost gest na tlačítku pro:
this.UIMap.AssertMethod1();
Me.UIMap.AssertMethod1()
Po přidání kódu, by měl zkušební metody CodedUITestMethod1 vypadat takto:
[TestMethod] public void CodedUITestMethod1() { // To generate code for this test, select "Generate Code for Coded UI Test" from the shortcut menu and select one of the menu items. // Launch the app. XamlWindow myAppWindow = XamlWindow.Launch("7254db3e-20a7-424e-8e05-7c4dabf4f28d_cyrqexqw8cc7c!App"); // Tap the button. Gesture.Tap(this.UIMap.UIApp1Window.UIButtonButton); this.UIMap.AssertMethod1(); }
<CodedUITest(CodedUITestType.WindowsStore)> Public Class CodedUITest1 <TestMethod()> Public Sub CodedUITestMethod1() ' ' To generate code for this test, select "Generate Code for Coded UI Test" from the shortcut menu and select one of the menu items. ' ' Launch the app. XamlWindow.Launch("8ebca7c4-effe-4c86-9998-068daccee452_cyrqexqw8cc7c!App") '// Tap the button. Gesture.Tap(Me.UIMap.UIApp2Window.UIButtonButton) Me.UIMap.AssertMethod1() End Sub
Vytvoření testování a znovu spusťte test pomocí Průzkumníka testů.
Aplikace pro Windows Store spouští akce, která se klepnutím na tlačítko po dokončení a textové pole Text vlastnost zadán a ověřen pomocí metody vyhodnocení.
Po dokončení testu, zobrazí Průzkumníka testů, aby test proběhl úspěšně.
Dotazy a odpovědi
D: Proč nevidíte možnost zaznamenat mé programové testy uživatelského rozhraní v generování kódu pro dialogové okno programové testování uživatelského rozhraní
Objekt: možnost zaznamenat není podporován pro aplikace pro Windows Store.
D: můžete vytvořit programové testy uživatelského rozhraní pro své aplikace pro Windows Store podle WinJS?
Objekt: Ne, jsou podporovány pouze na základě jazyka XAML aplikace.
D: můžete vytvořit programové testy uživatelského rozhraní pro své aplikace pro Windows Store v systému, který není systémem Windows 8?
Objekt: Ne, šablony programové projekt testů uživatelského rozhraní (aplikace pro Windows Store) je k dispozici pouze v systému Windows 8.
D: Proč nelze upravit kód v souboru UIMap.Designer?
Objekt: všechny kódu změny provedené v souboru UIMapDesigner.cs budou přepsány pokaždé, když je generování kódu pomocí UIMap - programové testování Tvůrce uživatelského rozhraní.Pokud je třeba změnit zaznamenanou metodu, musíte ji zkopírovat do souboru UIMap.cs a přejmenovat ji.Soubor UIMap.cs lze použít k přepsání metod a vlastností v souboru UIMapDesigner.cs.Je třeba odebrat odkaz na původní metodu v kódovaném souboru UITest.cs a nahradit ji názvem přejmenované metody.
Viz také
Koncepty
Ověřování kódu pomocí automatizace uživatelského rozhraní
Nastavení jedinečné vlastnosti automatizace pro ovládací prvky pro Windows Store za účelem testování