Etap testów w każdym projekcie, również w projektach Salesforce, jest kluczowy dla zapewnienia wysokiej jakości i efektywności wdrażanych rozwiązań. Wymaga zrozumienia specyfiki danego systemu, umiejętności tworzenia skomplikowanych przypadków testowych oraz znajomości narzędzi wspierających pracę testera. Ważne jest również dostosowywanie scenariuszy testowych do kluczowych obszarów Salesforce oraz ciągłe dostosowywanie strategii testowania do ewoluującej platformy Salesforce.
Sam zajmuję się testowaniem w projektach Salesforce już prawie 5 lat. Posiadam kilka certyfikatów, ale nadal poszerzam swoją wiedzę. Dzisiaj z przyjemnością podzielę się z Wami moją wiedzą na temat kilku narzędzi przydatnych, a nawet niezbędnych w pracy testera, które ułatwiają nam pracę. W kolejnym moim artykule podzielę się z Wami dobrymi praktykami, które warto wdrożyć w swojej pracy, aby efektywnie testować w projektach Salesforce.
Wyposażenie się w odpowiednie narzędzia może znacznie zwiększyć skuteczność i wydajność testów w projektach Salesforce. Poniżej przedstawię Wam TOP 5 powszechnie używanych narzędzi, które usprawnią pracę każdego testera manualnego.
Na co dzień korzystam z wtyczki Salesforce Logins by Synebo, która jest najlepszym rozwiązaniem usprawniającym proces logowania. Jest przejrzysta i kompaktowa. Przechowuje dane dostępowe do logowania na różnych środowiskach, ułatwia zarządzanie wieloma kontami Salesforce. Dzięki niej mogę łatwo przełączać się między różnymi środowiskami testowymi i produkcyjnymi, co jest nieocenione podczas testowania różnych scenariuszy i funkcji.
Po kliknięciu na niebieski plusik (+) – popatrz screen poniżej – otwiera nam się okno z danymi do uzupełnienia.
W pierwszej kolejności wybieramy folder, gdzie ma znajdować się link do środowiska. Następnie wybieramy typ środowiska np. Produkcja, Sandbox, Custom Domain. Podajemy nazwę, adres, adres URL lub organization ID. W zasadzie mamy wszystko gotowe. Teraz po kliknięciu pierwszej ikonki po prawej stronie od nadanej przez nas nazwy (patrz trzecie okno) uruchomi nam się środowisko i już automatycznie jesteśmy w nim zalogowani.
Wtyczka znacznie przyśpiesza pracę, nie musimy już ręcznie wpisywać danych. Jest to bardzo pomocne, szczególnie, gdy pracujemy na kilku środowiskach. W ten sposób unikasz powtarzalnego procesu logowania i oszczędzasz czas. Narzędzie zapewnia bezpieczeństwo danych dzięki szyfrowanemu przechowywaniu haseł.
Z pewnością spodoba Ci się wydajność i wygoda oferowana przez to narzędzie.
Wtyczka ta to narzędzie zwiększające produktywność nie tylko administratorów i programistów Salesforce. Nam, testerom, umożliwia sprawdzanie danych i metadanych bezpośrednio z interfejsu użytkownika Salesforce.
Jak korzystać z wtyczki? Po zainstalowaniu wtyczki (na przykład stąd) objawia się ona w dyskretny sposób w postaci strzałek z prawej strony ekranu (patrz screen).
Wtyczka działa w oparciu o rekord, na którym obecnie jesteśmy.
Po kliknięciu we wspomnianą strzałkę wysuwa nam się okno z domyślnie zaznaczoną zakładką Object.
Na tym widoku dostajemy od razu takie informacje jak API name, Label (etykieta danego obiektu) oraz ID Salesforce. Mamy dostępnych tutaj jeszcze kilka innych opcji, jak Show all data, Data Export, Data Import, Org Limits.
Osobiście najczęściej korzystam z Show all Data.
Po kliknięciu Show all Data otwiera nam się nowa strona. Na tej stronie możemy sobie podejrzeć API name pól, Label (etykietę), typy pól oraz wartości, jakie są obecnie przechowywane.
Na górze okna, które nam się otworzyło (patrz screen niżej) mamy wyszukiwarkę 🔍, która wyszukuje nam pola po wspomnianych cechach. Ponadto możemy zmienić wartości w konkretnym polu. Jeśli mamy aktywną funkcję edytowania, klikamy dwukrotnie w dane pole lub klikamy Edit i otwierają się wszystkie możliwe dane do edycji. Po wpisaniu nowej wartości, zapisujemy. Ponadto możemy też z tej pozycji usuwać rekord poprzez Delete.
Oprócz tego możemy również klonować rekordy czy eksportować je. Po kliknięciu przycisku Export, pokaże się okno z query, które budujemy w celu zapytania do bazy.
Domyślnie jest wybrane ID rekordu, na którym jesteśmy. Możemy dodać w zapytaniu dowolne pola, które oczywiście występują na danym obiekcie. Jeśli będziemy pewni, że zapytanie jest kompletne, klikamy przycisk Export. Pokaże nam się widok rekordów, które będą eksportowane. Mamy tutaj do wyboru trzy różne buttony: Copy (Excel format), Copy (CSV) i Copy (JSON). W zależności od tego, jaki format nas interesuje, klikamy odpowiedni przycisk. Dane są zapisywane w schowku systemowym. Możemy plik skopiować do notatnika, zmienić rozszerzenie do pliku CSV i dalej użyć pliku do importu danych.
Jak widzicie, wtyczka Salesforce Inspector to przydatne narzędzie, które umożliwia szybki dostęp do danych. Umożliwia sprawdzanie i modyfikowanie danych, debugowanie i rozwiązywanie problemów oraz uzyskanie głębszego wglądu w Salesforce org.
Jako tester manualny potrzebujesz wszechstronnego narzędzia, które poradzi sobie z różnorodnymi zadaniami związanymi z danymi i ich modyfikacjami. I tu z pomocą przychodzi Workbench. (Workbench ma swoje repozytorium na GitHubie, które można pobrać i postawić na local hoście).
Po wejściu na stronę musimy wybrać Environment: Produkcja (Production) lub środowisko testowe Sandbox, wybieramy również właściwe nam API Version. Zaznaczamy “I Agree to the term of the service” i klikamy “Login with Salesforce”.
Zostaniemy przekierowani do logowania na środowisko Salesforce, gdzie należy wpisać swój Username i hasło. Klikamy “Log in to Sandbox”.
Musimy potwierdzić również dostęp do danych. Robimy to poprzez kliknięcie w przycisk Allow (patrz screen poniżej). Wystarczy zrobić to raz dla danego środowiska. Przy kolejnych logowaniach nie będzie trzeba tego potwierdzać. Chyba, że wyczyścimy ciasteczka.
Jesteśmy zalogowani.
Z naszego punktu widzenia, czyli testera, ważne są zakładki Queries, Data oraz Utilities.
Po kliknięciu w zakładkę Queries, rozwija się menu i klikamy w SOQL Query. Otwiera nam się widok konstruktora zapytań SOQL. SOQL jest to język zapytań do bazy danych w systemie Salesforce.
W polu Object wybieramy to, co nas interesuje (Account, Contact lub jakiś inne customowy obiekt). W polu View as wybieramy, w jaki sposób pola mają być przedstawione, czy w postaci listy, czy w postaci wyeksportowanego pliku CSV lub XML.
Przed wykonaniem query możemy wyniki posortować, wybierając sposób sortowania w polu Sort result by. Jeśli chcemy filtrować dane w Filter Results By wskazujemy pole, po czym wybieramy operator, np. znak równości i podajemy wartość, po jakiej mamy dokonać zawężenia. Całość aktualnie budowanego zapytania wyświetli się w polu Enter or modify a SOQL query below znajdującym się nad przyciskiem Query.
Jeśli skończymy tworzenie zapytania klikamy w przycisk Query i po tym wyświetlą się wyniki naszego zapytania.
Pole Enter or modify a SOQL query below możemy dowolnie edytować, np. poprzez wpisanie nazwy pola, które nas interesuje. Gdy dodamy takie pole, możemy kliknąć ponownie w przycisk Query i wtedy wyświetli nam się dodatkowe pole w tabeli z wynikami.
Workbench umożliwia automatyzację procesu wstawiania dużych zestawów danych, co znacznie oszczędza czas.
W czasie insertowania danych wybieramy zakładkę Data, potem Insert. Zostaniemy przeniesieni do widoku kreatora insertowania danych.
W pierwszej kolejności musimy wybrać typ obiektu (Object Type), czyli tak, jak to było w konstruktorze Query: Account, Lead, Contact, Case, czy customowy obiekt. Następnie wybieramy, czy chcemy utworzyć pojedynczy rekord (Single record), czy skorzystać z opcji from file. Opcja from file służy do dodawania wielu rekordów z wcześniej przygotowanego pliku CSV.
Poniżej pokażę Wam ścieżkę Single record. Po kliknięciu Next, wyświetli się tabela z polami do uzupełniania.
Na czerwono podświetlają nam się pola obowiązkowe. Po wypełnieniu pól obowiązkowych i tych, które nas interesują, klikamy w przycisk Confirm Insert. Jeśli wszystko uzupełniliśmy w poprawny sposób, to otrzymujemy komunikat o sukcesie wraz z ID Salesforce’owym.
Po najechaniu kursorem myszy na ID pokażą się nam opcje, a wśród nich opcja View in Salesforce, po kliknięciu w którą przeniesiemy się bezpośrednio do widoku nowo utworzonego rekordu w Salesforce.
Kolejna funkcjonalność Workbench to moduł do testów REST API. Klikamy w zakładkę Utilities, następnie REST Explorer.
Otwiera nam się widok z parametrami do tworzenia requestów.
Wybieramy metodę HTTP (GET, POST, PUT, PATCH, DELETE lub HEAD). Następnie wklejamy URL prowadzący do endpointu, do którego chcemy dokonać wysyłki. W polu niżej wklejamy lub budujemy ręcznie request w postaci JSON, którego chcemy wysłać. Jeśli mamy wszystko gotowe, klikamy Execute. Jeśli wszystko było poprawne, dostajemy komunikat o sukcesie, wraz z ID utworzonego rekordu.
Zwróćmy uwagę tutaj na link Show Raw Response. Po kliknięciu w ten link otwiera nam się cały Response wraz z kodem zwrotnym i resztą szczegółów.
Workbench pozwala wstawiać i usuwać rekordy danych bezpośrednio w instancjach Salesforce. Koniec ze żmudnym, ręcznym wprowadzaniem danych lub skomplikowanymi manipulacjami w bazach danych – wszystko to można wykonać kilkoma kliknięciami, oszczędzając cenny czas.
Workbench umożliwia realizację wywołań API REST i SOAP, umożliwiając dokładną integrację i testy regresyjne. Dzięki płynnej interakcji z interfejsami API możesz weryfikować przepływ danych, testować integrację systemów i zapewniać funkcjonalność systemu.
A co, jeśli chcesz pobrać dane i wykonać niestandardową logikę w celu kompleksowych testów? Dzięki zapytaniom SOQL i skryptom Apex możesz wyodrębniać dane i wykonywać złożone operacje w celu sprawdzenia funkcjonalności w systemie czy aplikacji.
-
Bardzo ważna rzecz.
Warto sprawdzać, czy jesteśmy zalogowani na odpowiednie środowisko. Brzmi to trochę banalnie, prawda? Ale wyobraźmy sobie, że w danym dniu wykonujemy testy na kilku środowiskach przy użyciu Workbench, więc zdarza się, że możemy zapomnieć się wylogować. Żeby dokonać weryfikacji wystarczy najechać na link pokazany na poniższym screenie. W okienku zostaną wyświetlone dane środowiska, na jakim jesteśmy zalogowani oraz Username.
Kolejne narzędzie bardzo przydatne testerom to konsola developerska Salesforce. Tak, wiem, w nazwie mamy deweloperska. My jesteśmy testerami, ale wbrew pozorom nie jest to narzędzie zakazane dla testerów. Wręcz odwrotnie – bardzo się przydaje. Żeby dostać się do narzędzia, będąc zalogowanym w Salesforce, musimy kliknąć ikonkę Set Up (koło zębate). Potem klikamy w Developer Console.
Ukaże nam się wtedy cała konsola deweloperska.
Do czego możemy użyć konsoli developerskiej?
Możemy np. uruchomić Query. W zakładce Query Editor wpisujemy zapytanie do bazy lub przeklejamy wcześniej przygotowane i klikamy w przycisk Execute w dolnym rogu strony. Na środku wyświetlą nam się wszystkie szukane rekordy, jak widać na powyższym screenie. Rekordy możemy zaznaczyć albo pojedynczo lub przy pomocy CTRL i użyć opcji Delete Row, dzięki czemu usuniemy rekordy z bazy danych.
Bardzo ważne: żeby usuwanie zadziałało, nasze query musi mieć ID (patrz zielona strzałka). W przeciwnym razie nie uda nam się usunąć rekordów.
Oprócz usuwania możemy bezpośrednio zmieniać wartości w polach dla danego rekordu poprzez kliknięcie dwukrotnie w pole, które chcemy edytować. Po dokonaniu edycji klikamy przycisk Save Rows i rekordy aktualizują się, przybierając wartości docelowe, które chcieliśmy wprowadzić.
Bardzo ważne: dobrze, żebyśmy wiedzieli, jaki jest to typ pola (String, data), by wprowadzić odpowiedni format, żeby zapis odbył się w poprawny sposób.
Kolejna opcja, jaką daje nam konsola, to możliwość uruchamiania batchy oraz skryptów do tworzenia danych.
Żeby to zrobić, musimy najpierw kliknąć w zakładkę Debug. Następnie Open Executive Anonymous Window.
Otworzy nam się okno o nazwie Enter Apex code.
Możemy wkleić tutaj skrypt lub batch. Dla przykładu na screenie użyłem skryptu do tworzenia konta. Klikamy przycisk Execute.
Konsola Developerska Salesforce jest potężnym narzędziem. Jej uniwersalność sprawia, że jest cenna nie tylko dla deweloperów, ale także dla testerów, co starałem się przedstawić w powyższych akapitach. Konsola oferuje testerom manualnym potężne narzędzia do efektywnego testowania i walidacji aplikacji Salesforce. Dostarcza szczegółowych informacji niezbędnych do głębokiej analizy i zapewnienia jakości, co jest kluczowe w procesie tworzenia niezawodnych i wydajnych rozwiązań na platformie Salesforce.
POSTMAN jest kojarzony z testowaniem API i automatyzacją, oferując wartość dla testerów manualnych. Umożliwia testowanie integracji Salesforce z innymi systemami i usługami, co jest kluczowe w dzisiejszych złożonych środowiskach IT. Postman oferuje przyjazny dla użytkownika intuicyjny przejrzysty interfejs i mnóstwo funkcji pozwalających usprawnić proces testowania API.
Korzystając z POSTMANa możemy mieć kilka kart z różnymi requestami otwartych w jednym czasie i swobodnie przechodzić między nimi.
By używać prawidłowo POSTMAN do testów Salesforce, najpierw musimy poprawnie skonfigurować autoryzację pomiędzy POSTMAN a Salesforce. Jest kilka typów takich autoryzacji. Ja na co dzień używam protokołu standardu OAuth 2.0. Do zautoryzowania potrzebujemy adresu środowiska, loginu, tokenu użytkownika oraz Consumer Secret i Consumer key z określonego środowiska Salesforce, z którym chcemy się połączyć.
Po autoryzacji możemy rozpocząć budować request. Najpierw wybieramy metodę: post, put, delete lub inną. Następnie wklejamy URL dla docelowego endpointu, do którego chcemy wysłać request. Klikamy w przycisk Send i dostajemy zwrotkę z kodem statusu oraz Response body. W tym przypadku jest to ID i wartość dla parametru Success.
Siła Postmana polega na jego zdolności do automatyzacji powtarzalnych zadań testowych. Dzięki możliwościom tworzenia skryptów możesz tworzyć automatyczne testy, oszczędzając czas i wysiłek, zapewniając jednocześnie spójne i wiarygodne wyniki testów.
Testowanie wydajności to kolejny obszar, w którym Postman będzie pomocny. Mierząc czasy odpowiedzi API i symulując scenariusze o dużym natężeniu ruchu, możesz zidentyfikować wąskie gardła wydajności i zoptymalizować interfejsy API w celu uzyskania maksymalnej wydajności.
Wykorzystując przedstawione przez mnie w artykule narzędzia i sposoby pracy z nimi, możesz zoptymalizować swoją pracę i osiągnąć większą efektywność testowania w projektach Salesforce.
Tester manualny w Salesforce musi łączyć umiejętności analityczne z praktyczną wiedzą o systemie. Każdy projekt jest inny, a elastyczność i adaptacja do zmieniających się wymagań są kluczowe. Tester identyfikuje problemy i może proponować rozwiązania, które ułatwiają korzystanie z systemu ponieważ ma punkt podobny to użytkownika systemu, które korzysta z niego na co dzień.
Należy ciągle poszerzać swoją wiedzę i umiejętności, aby sprostać wyzwaniom w dynamicznie zmieniającym się świecie Salesforce. Tester jest kluczowym graczem w zespole projektowym. Nasze umiejętności i wiedza często decydują o sukcesie wdrożenia systemu i satysfakcji użytkowników.
W kolejnym moim artykule podzielę się z Wami dobrymi praktykami, które warto wdrożyć w swojej pracy, aby efektywnie testować w projektach Salesforce.
Miłych testów!
- Senior Software Tester / Team Leader
-
Senior Software Tester z pięcioletnim doświadczeniem w testowaniu oprogramowania. Posiada kilka certyfikatów Salesforce i ciągle zdobywa nową wiedzę z obszaru Salesforce. Lubi dzielić się nią z innymi i wdrażać juniorów w niezwykły świat testowania w projektach Salesforce. Prywatnie uwielbia grać na Xboksie i Nintendo Switchu oraz interesuje się piłką nożną.