2010-05-05 10 views
22

Używam testów kodowanych UI Visuial Studio do uruchamiania zautomatyzowanych testów interfejsu użytkownika w aplikacji WPF za każdym razem, gdy kompilacja działa na moim serwerze TFS. Problem, na który napotykam, to dynamiczne uruchamianie pliku wykonywalnego w oparciu o ścieżkę, do której został on zbudowany, w tym konfigurację (x86, x64).VS 2010 Test kodowanego interfejsu użytkownika - uruchomienie aplikacji z odniesieniami

Czy istnieje sposób uzyskania ścieżki do pliku wykonywalnego w projekcie, do którego istnieje odwołanie, aby móc dynamicznie uruchamiać aplikację z mojego projektu testowego?

Odpowiedz

24

MSTest:

  1. Otwórz plik .testsettings i zaznaczyć opcję "Włącz Deployment" w sekcji wdrażania.
  2. W swoim projekcie testowym kliknij prawym przyciskiem myszy i wybierz Dodaj istniejący element.
  3. Przejdź do lokalizacji kompilacji aplikacji do przetestowania.
  4. Znajdź swój plik wykonywalny i wybierz "Dodaj jako link" (upewnij się, że zawierasz wszystkie biblioteki zależne od aplikacji, jeśli nie są one już przywoływane przez twój projekt testowy.)
  5. Kliknij prawym przyciskiem myszy link do pliku wykonywalnego i wybierz " Kopiowanie Always”(to skopiuje nową wersję .exe do katalogu bin testy, gdy jest zbudowany)
  6. W swojej [TestInitialize] dodać następujące uruchomić aplikację:

    _yourApp = ApplicationUnderTest.Launch(Path.Combine(Directory.GetCurrentDirectory(), "yourexecutablename.exe"));
  7. w twojej [TestCleanup] dodać:

    _yourApp.Close();

NUnit: (trzeba będzie odwoływać i używać Microsoft.VisualStudio.TestTools.UITesting)

  1. w projekcie testowym prawym przyciskiem myszy i wybierz Add Existing Item.
  2. Przejdź do lokalizacji kompilacji aplikacji do przetestowania.
  3. Znajdź swój plik wykonywalny i wybierz „Dodaj link” (upewnij się, że obaj należą wszystkie aplikacje zależne DLL, jeśli nie są one już odwołuje projektu badawczego.)
  4. Kliknij prawym przyciskiem myszy na link do pliku wykonywalnego i wybierz „Kopiuj zawsze” (to skopiuje nową wersję .exe do katalogu bin testów, gdy jest wbudowany)
  5. W swojej [Setup] dodać następujące uruchomić aplikację:

    _yourApp = ApplicationUnderTest.Launch("yourexecutablename.exe"));
  6. w twojej [Teardown] dodajesz followi NG:

    _yourApp.Close();

uwaga: Nie zweryfikowana wdrożenia NUnit

+0

+1 Niesamowite wyjaśnienie krok po kroku. – Lernkurve

+0

Tylko uwaga dla użytkowników VB .Net: Dodano wewnętrzną zmienną wewnątrz klasy testowej (np. "Prywatna myApp"), zamiast nawiasów, użyj <> (np. "" zamiast "[TestCleanup] ", a kroki 4 i 5 są niemożliwe do wykonania: –

+0

@Zian Choy - Zbuduj swój plik wykonywalny tak, jak normalnie, a następnie, dodając link do pliku .exe, musisz go znaleźć w jego ścieżce budowania konfiguracji. Na przykład: c: \ myapp \ bin \ debug \ myapp.exe – Adam

4

Jak pisał Zian Choy, korzystając z kroków przewidzianych przez Adama, zastosowanie badanego nie jest kopiowany do .../Out katalogu. Wykonałem następujące dodatkowe czynności:

  1. Otwórz.plik testsettings i zaznacz "Włącz wdrożenie" w sekcji "Wdrożenie".
  2. Dodaj testowane pliki binarne za pomocą "Dodaj katalog ...", np. "\ AppUnderTest \ bin \ debug"
1

Od pewnego czasu borykam się z próbami odkrycia, jak powiedzieć projektowi CodedUI, gdzie można uruchomić plik wykonywalny i jak zrobić to "dobrze", aby działa automatycznie, gdy różni użytkownicy uruchamiają kod w różnych obszarach roboczych, na różnych hostach itd. Wpadłem na skopiowanie pliku wykonywalnego do współużytkowanego katalogu (krok we właściwym kierunku), a następnie nagrywanie akcji, aby ją uruchomić (pomoc zespołu, więc przynajmniej działa dla różnych użytkowników na tym samym hoście).

Oto kroki z instrukcji MSTest, dostosowane do MS Visual Studio 2015 Enterprise IDE. Niestety, nie mam wystarczająco dużo „punkty reputacji”, aby móc zamieścić zrzuty ekranu -

  1. Od wewnątrz MS Visual Studio IDE, w Solution Explorer, kliknij na projekcie CodedUI aby ją podświetlić, kliknij prawym przyciskiem myszy, wybierz "Dodaj", wybierz "Istniejący element"
  2. W oknie dialogowym Dodaj istniejący element przejdź do pliku wykonywalnego, który chcesz przetestować w projekcie CodedUI. Kliknij plik, aby go podświetlić, a następnie znajdź listę rozwijaną "Dodaj" w oknie dialogowym i wybierz "Dodaj jako łącze", kliknij OK.
  3. Wróć do rozwiązania, kliknij ponownie projekt CodedUI i rozwiń go. Teraz powinieneś zobaczyć ikonę .exe wymienione wewnątrz projektu CodedUI
  4. prawym przyciskiem myszy na ikonę .exe i wybierz „Właściwości”
  5. W oknie Właściwości ustaw BuildAction do treści i Kopiuj do wyjścia Informator Copy Zawsze

Voila !!!

Powiązane problemy