Repozytorium obiektów lokalnych i współdzielonych w QTP/UFT
⚡ Inteligentne podsumowanie
Repozytorium obiektów w QTP/UFT Jedna z nich przechowuje obiekty testowe i właściwości, których narzędzie używa do rozpoznawania aplikacji. Występuje w dwóch formach: lokalnego repozytorium dla każdej akcji oraz wielokrotnego użytku repozytorium współdzielonego.
Czym jest repozytorium obiektów? QTP?
Repozytorium obiektów jest zbiorem obiektów testowych i informacji, które są rozpoznawane przez QTP do pracy nad nim. Gdy użytkownik rejestruje test, obiekty i ich właściwości są domyślnie przechwytywane.
Ponieważ każdy zautomatyzowany krok musi wskazywać na zapisany obiekt, repozytorium jest warstwą, która decyduje, czy skrypt będzie nadal działał po zmianie aplikacji. Najpierw należy zrozumieć, w jaki sposób obiekty się tam znajdują.
Jak działa identyfikacja obiektów w QTP?
- QTP wykorzystuje technologię „ludzką” do identyfikacja obiektu
- Podczas Rekord czas, QTP próbuje poznać właściwości obiektu GUI, na którym wykonywana jest operacja.
- W czasie wykonywania, UFT Porównuje się przechowywane właściwości obiektu z rzeczywistymi właściwościami obiektu dostępnymi na ekranie i jednoznacznie identyfikuje obiekt niezależnie od jego położenia na ekranie.
- Przechowywany obiekt wraz ze swoimi właściwościami nazywany jest Obiekt testowy
- W czasie wykonywania rzeczywisty obiekt dostępny w testowanej aplikacji nazywa się Obiekt wykonawczy
- To jest Szybki test „Testowy model obiektu”
- Informacje o obiektach testowych są przechowywane w repozytorium obiektów
- Dodatki pomagają, instruując program QuickTest z wyprzedzeniem o naturze obiektu, który ma zostać nagrany, aby skrócić czas potrzebny na poznanie jego właściwości
Naucz się identyfikacji obiektów na przykładzie w poniższym filmie
Kliknij w tym miejscu jeśli film nie jest dostępny
Typy repozytoriów obiektów
Istnieją 2 typy repozytorium obiektów w QTP
- Lokalne repozytorium obiektów
- Udostępnione repozytorium obiektów
Różnią się one tylko jednym: kto jest właścicielem obiektów. Repozytorium lokalne należy do jednej akcji, podczas gdy repozytorium współdzielone jest niezależnym plikiem, który może być pożyczony przez dowolną akcję.
Lokalne repozytorium obiektów
- Lokalne repozytorium obiektów jest domyślnym repozytorium obiektów
- Jest specyficzny dla akcji i może być użyty tylko dla określonej akcji
- Lokalne repozytorium obiektów jest preferowane, gdy aplikacja nie jest dynamiczna w stosunku do czasu
- Lokalnego repozytorium obiektów nie można ponownie wykorzystać
- W lokalnym repozytorium obiektów można wykonywać wiele operacji, takich jak:
- Zaznacz obiekt przechowywany w repozytorium testowanej aplikacji
- Sprawdź, czy konkretny obiekt w Twoim AUT jest przechowywany w Repozytorium Obiektów
- Wycinaj, kopiuj, wklejaj, modyfikuj i usuwaj obiekty
- Jeżeli przypadkowo zmieniłeś wartość nieruchomości, możesz zaktualizować jej opis z poziomu aplikacji, korzystając z funkcji aktualizacji.
Poniższy film prezentuje pracę z lokalnym repozytorium obiektów.
Repozytorium obiektów współdzielonych: twórz, skojarz, edytuj
- Globalne lub współdzielone repozytorium obiektów jest preferowane, gdy aplikacja jest dynamiczna i opisy obiektów często się zmieniają
- W projektach automatyzacji częściej stosuje się repozytorium obiektów współdzielonych i lokalnych.
- Jednakże w porównaniu do lokalnego repozytorium obiektów wiąże się to z większymi nakładami na konserwację i administrację.
Aby utworzyć i używać repozytorium obiektów współdzielonych, należy wykonać trzy ogólne kroki
- Tworzenie repozytorium obiektów współdzielonych
- Powiązanie repozytorium obiektów współdzielonych
- Edytowanie repozytorium obiektów współdzielonych
Przyjrzyjmy się im pojedynczo
Krok 1) Tworzenie repozytorium obiektów współdzielonych
- Wszystkie repozytoria są domyślnie lokalne. Aby utworzyć repozytorium obiektów współdzielonych, w oknie dialogowym Repozytorium obiektów Box, Kliknij Plik > Eksportuj obiekty lokalne
- Pliki repozytorium mają rozszerzenie .tsrPodaj odpowiednią nazwę, powiedz „guru99” i zapisz
- Plik repozytorium współdzielonego został utworzony
Krok 2) Kojarzenie repozytorium obiektów współdzielonych
- Następnym krokiem jest powiązanie repozytorium z testem, co umożliwi jego użycie
- Aby skojarzyć repozytorium z testem, kliknij Zasoby > Repozytorium współpracowników (oznaczone Repozytoria stowarzyszone w bieżącym UFT Jedna wersja)
- Możesz wybrać repozytorium, które chcesz powiązać z akcjami dostępnymi w teście.
- Możesz teraz użyć tego współdzielonego repozytorium do opracowania swojego testu
Krok 3) Edycja repozytorium obiektów współdzielonych
- Do edycji udostępnionego repozytorium można użyć Menedżera repozytorium obiektów.
- Wybierz Zasoby > Menedżer repozytorium obiektówOtwórz utworzone przez nas repozytorium obiektów „guru99”
- Domyślnie repozytorium jest otwarte w trybie tylko do odczytu. Aby włączyć edycję, kliknij Plik > Włącz edycję
- Po włączeniu edycji możesz wykonywać wszystkie operacje, takie jak wycinanie, kopiowanie, wklejanie i zmienianie nazw obiektów, co jest również możliwe w repozytorium obiektów
- Za pomocą Menedżera repozytoriów obiektów można również porównać dwa repozytoria obiektów. QTP raportuje statystyki dotyczące tego, co jest unikalne, a co wspólne w obu repozytoriach
- Za pomocą narzędzia do scalania repozytoriów obiektów można połączyć dwa repozytoria w jedno
Poniższy film przedstawia przebieg pracy w ramach współdzielonego repozytorium.
Różnica między lokalnym a współdzielonym repozytorium obiektów
Większość zespołów ostatecznie korzysta z obu rodzajów obiektów równolegle, dlatego warto zobaczyć kompromisy w jednym miejscu, zanim zdecyduje się, gdzie umieścić nowy obiekt.
| kryteria | Lokalne repozytorium obiektów | Udostępnione repozytorium obiektów |
|---|---|---|
| Dostępność: | Tworzone automatycznie przy każdej akcji | Należy utworzyć, a następnie powiązać z akcją |
| Zakres | Jedno repozytorium na akcję; możliwe do wykorzystania tylko przez daną akcję | Jeden plik, który można wykorzystać w wielu akcjach i testach |
| Format pliku | Zapisano jako ObjectRepository.bdb w folderze akcji | Zapisano jako zewnętrzny .tsr filet |
| Edycja | Można edytować bezpośrednio w oknie repozytorium obiektów | Tylko do odczytu domyślnie; edytowane za pomocą Menedżera repozytorium obiektów |
| Ponowne użycie | Nie można ponownie wykorzystać | Zaprojektowane do ponownego wykorzystania i kontroli wersji |
| Konserwacja | Zmieniona właściwość musi zostać naprawiona w każdej akcji | Zmieniona właściwość jest ustalana raz, dla każdego powiązanego testu |
| Najlepiej nadaje się do | Małe, stabilne aplikacje i testy uczenia się w oparciu o pojedyncze działania | Duże lub dynamiczne aplikacje z udziałem wielu inżynierów automatyki |
Krótko mówiąc, lokalne repozytorium jest szybsze na początek, a współdzielone jest tańsze w utrzymaniu. Testy uczenia się i jednorazowe sprawdzenia mogą pozostać lokalne; wszystko, co uruchomi druga osoba, powinno być w… .tsr plik.
Jak dodawać obiekty bezpośrednio do współdzielonego repozytorium obiektów
Eksportowanie obiektów lokalnych to tylko jedna droga do .tsr plik. Jeśli wiesz już, jakich kontrolek potrzebuje zestaw, szybciej będzie najpierw utworzyć współdzielone repozytorium i w ogóle nie zapisywać danych.
- Wybierz Zasoby > Menedżer repozytorium obiektów aby otworzyć okno Menedżera.
- Dodaj Plik> Nowy aby rozpocząć puste, współdzielone repozytorium lub otworzyć istniejące .tsr plik i wybierz Plik > Włącz edycję.
- Użyj Dodaj obiekty opcja wskazania kontrolki, której działanie chcesz poznać w testowanej aplikacji, a następnie potwierdzenia wyboru.
- Powtórz tę czynność dla każdego elementu sterującego, którego dotyka pakiet, zmieniając nazwy obiektów na takie, które będą czytelne.
- Wybierz Plik> Zapisz i zapisz plik w folderze kontroli źródła obok testu.
- Wróć do testu i wybierz Zasoby > Repozytorium współpracowników i dołącz plik do każdej akcji, która go wymaga.
Dwa nawyki sprawiają, że to podejście się opłaca. Nazywaj obiekty zgodnie z ich rolą biznesową, a nie podpisem, ponieważ podpisy zmieniają się częściej niż role. Używaj też jednego repozytorium na ekran lub moduł aplikacji zamiast jednego dużego pliku, ponieważ mniejsze repozytoria ładują się szybciej i generują znacznie mniej konfliktów scalania.
