Udostępnij za pośrednictwem


Jak: tworzenie Test opartych na danych zakodowanych interfejsu użytkownika

Można utworzyć kodowane interfejsu użytkownika test który sprawdza, czy działa poprawnie, interfejs użytkownika (UI) dla aplikacji.Kodowane jako test interfejsu użytkownika wykonuje działania na kontroli interfejsu użytkownika dla aplikacji i weryfikuje, że określony formantów wyświetlane poprawne wartości.Aby uzyskać więcej informacji na temat tworzenia kodowane jako test interfejsu użytkownika, zobacz Tworzenie zakodowanej testy interfejsu użytkownika.

Wymagania

  • Visual Studio Ultimate, Visual Studio Premium

Po utworzeniu kodowane jako test interfejsu użytkownika z określonych danych, można uruchamiać wiele razy kodowane jako test interfejsu użytkownika z różnych zestawów danych do testowania różnych warunków.W tym celu można dodać wartości parametrów ze źródła danych do tworzenia opartych na danych kodowane test interfejsu użytkownika.Każdy wiersz w źródle danych jest powtórzenie kodowane jako test interfejsu użytkownika.Ogólny wynik testu będzie opierać się na temat wyników dla wszystkich iteracji.Na przykład jeśli jedna iteracja test zakończy się niepowodzeniem, ogólny wynik testu jest awarii.

Kiedy generuje się metod lub twierdzeń na egzamin kodowane jako interfejs użytkownika poprzez rejestrowanie je, stałymi, o których mowa w metodach nagrane są parametryzowane na parametr klasy.Na przykład, jeśli dodasz metodę o nazwie AddTwoNumbers, framework testujący kodowane jako interfejs użytkownika generuje drugą klasę o nazwie AddTwoNumbersParams i dodaje pola do tej klasy dla każdej wartości stałej, który został użyty podczas nagrywania metodę.Jeżeli wygenerujesz metodę twierdzenie o nazwie AssertForAdd, ramach generuje klasę o nazwie AssertforAddExpectedValues dla przewidywanych wartości.Klasy te są generowane automatycznie i są używane w poniższych krokach.

Wszystkie zmiany w teście umożliwiające właściwe korzystanie ze źródła danych dla parametrów będzie podejmowana próba plik kodu źródłowego taki test (ja.e.CodedUITest1.cs).Nie można zmodyfikować kod w UIMap.Designer.cs pliku.

Po utworzeniu kodowane jako test interfejsu użytkownika umożliwia kroki opisane w poniższej procedurze dodanie źródła danych i parametry na taki test.W tym przykładzie założono, że te elementy kodu w rozwiązaniu:

  • Kodowane jako klasa test interfejsu użytkownika o nazwieCodedUITest1.

  • Metodę o nazwieCodedUITestMethod1().

Metoda badania jest dla aplikacji prosty kalkulator, która dodaje dwie liczby i weryfikuje, że dodawane są ze sobą poprawnie dla tego testu do przekazania.

Źródło danych jest .csv pliku, który zawiera następujące dane:

Input1

Input2

ExpectedResult

3

4

7

5

6

11

1200

24000

25200

Utwórz plik i dodać go do projektu kodowane jako test interfejsu użytkownika.

Utwórz testowe opartych na danych kodowanych interfejsu użytkownika

Do tworzenia opartych na danych kodowane test interfejsu użytkownika

  1. W Solution Explorer, otwórz rozwiązanie, które zawiera zakodowane projektu badania interfejsu użytkownika, a następnie otwórz kodowane jako test interfejsu użytkownika do edycji.

  2. Wstawianie atrybutu źródła danych bezpośrednio w kodzie, w wierszu bezpośrednio nad swoimi metody badania.Można użyć ciągi źródła danych próbki w poniższej tabeli, kopiując je do kodu i dokonanie niezbędnych dostosowań.

    Typ źródła Data

    Atrybut źródła danych

    CSV

    [DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "|DataDirectory|\\data.csv", "data#csv", DataAccessMethod.Sequential), DeploymentItem("data.csv"), TestMethod]

    Program Excel

    DataSource("System.Data.Odbc", "Dsn=Excel Files;Driver={Microsoft Excel Driver (*.xls)};dbq=|DataDirectory|\\Data.xls;defaultdir=.;driverid=790;maxbuffersize=2048;pagetimeout=5;readonly=true", "Sheet1$", DataAccessMethod.Sequential), TestMethod]

    Przypadku testowego w Team Foundation Server

    [DataSource("Microsoft.VisualStudio.TestTools.DataSource.TestCase", "http://vlm13261329:8080/tfs/DefaultCollection;Agile", "30", DataAccessMethod.Sequential), TestMethod]

    XML

    [DataSource("Microsoft.VisualStudio.TestTools.DataSource.XML", "|DataDirectory|\\data.xml", "Iterations", DataAccessMethod.Sequential), DeploymentItem("data.xml"), TestMethod]

    Program SQL Express

    [DataSource("System.Data.SqlClient", "Data Source=.\\sqlexpress;Initial Catalog=tempdb;Integrated Security=True", "Data", DataAccessMethod.Sequential), TestMethod]

    Źródło danych jest teraz dostępny do użycia w tej metodzie badawczej.Możesz użyć TestContext.DataRow do dostępu do bieżącego wiersza danych ze źródła danych.Dostęp można uzyskać każdej kolumny, używając następującej składni:

    string paramVal = TestContext.DataRow["Input1"]
    
  3. W Solution Explorer, otwórz CodedUITest1.cs pliku.Należy wprowadzić następujące zmiany do CodedUITestMethod1() metoda:

    1. Dodaj następujące dwa wiersze kodu przed wywołaniem AddTwoNumbers metodę w celu zapewnienia wartości tak, aby dodać.

      this.UIMap.AddTwoNumbersParams.TextInput1EditText = 
          TestContext.DataRow["Input1"].ToString();
      this.UIMap.AddTwoNumbersParams.TextInput2EditText = 
          TestContext.DataRow["Input2"].ToString();
      
    2. Dodaj następujący wiersz kodu przed wywołaniem AssertforAdd metodę w celu zapewnienia wartość dla metody assert.

      this.UIMap.AssertforAddExpectedValues.TextAnswerEditText = 
          TestContext.DataRow["ExpectedResult"].ToString();
      

      Jest to, jak powinien wyglądać kodowane jako metody badania interfejsu użytkownika z parametrami i źródła danych do niej dodać:

      [DeploymentItem("DataDriven.csv"), 
          DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", 
              "|DataDirectory|\\DataDriven.csv", "DataDriven#csv", 
              DataAccessMethod.Sequential), 
          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.
          this.UIMap.AddTwoNumbersParams.TextInput1EditText = 
              TestContext.DataRow["Input1"].ToString();
          this.UIMap.AddTwoNumbersParams.TextInput2EditText = 
              TestContext.DataRow["Input2"].ToString();
          this.UIMap.AddTwoNumbers();
      
          this.UIMap.AssertforAddExpectedValues.TextAnswerEditText = 
              TestContext.DataRow["ExpectedResult"].ToString();
          this.UIMap.AssertforAdd();
      }
      
  4. Zapisać zmiany w CodedUITest1.cs plik kodu źródłowego.

  5. Aby uruchomić kodowane jako test interfejsu użytkownika, kliknij prawym przyciskiem myszy kodowane jako test interfejsu użytkownika w edytorze kodu i wybierz polecenie Uruchomić testy.

    Po uruchomieniu testów, ogólny wynik testu dla wszystkich iteracji badania wyświetla w Wyników badania okna.Aby wyświetlić szczegóły każdej iteracji, kliknij dwukrotnie testu w Wyników badania okna.

Wskazówki

Aby uzyskać więcej informacji, zobacz testów na nieprzerwane z Visual Studio 2012-rozdział 2: Testowanie jednostek: testowanie wewnątrz i testów na nieprzerwane z Visual Studio 2012-Rozdział 5: Automatyzacja testy systemu

Zobacz też

Informacje

UIMap

Assert

Koncepcje

Weryfikowanie kodu przy użyciu kodowanych testów interfejsu użytkownika

Najważniejsze wskazówki dotyczące zakodowanej testów interfejsu użytkownika

Obsługiwane konfiguracje oraz platformy zakodowanych testów interfejsu użytkownika i nagrywania akcji

Inne zasoby

Tworzenie zakodowanej testy interfejsu użytkownika