what is localization testing
cykliczna kolejka tablicowa c ++
Dowiedz się, co to jest testowanie lokalizacji i testowanie internacjonalizacji:
Bardzo często można znaleźć witryny internetowe, które są teraz dostępne w wielu językach. Globalne marki zdały sobie obecnie sprawę, że jedynym sposobem na połączenie i tworzenie wartości jest przedstawienie ich działalności lokalnym mieszkańcom w języku, który jest naprawdę lokalny.
Ten proces dostosowania produktu do innego języka, regionu i lokalizacji nazywa się lokalizacją. Zlokalizowany produkt stwarza więcej możliwości biznesowych i sprzyja rozwojowi i ekspansji.
Jednak wiele organizacji popełnia błąd, dostosowując lokalizację pod koniec procesu rozwoju lub tuż przed uruchomieniem produktu.
Aby zlokalizować produkt, bardzo ważne jest, aby dowiedzieć się, czy jest on umiędzynarodowiony.
Zmieszany? Umiędzynarodowiony projekt produktu / aplikacji to taki, który może pomieścić zlokalizowaną zawartość, taką jak znaki z liter niezachodnich, języki dwubajtowe, możliwość rozszerzania tekstu w językach europejskich i kurczenia się, jak w językach azjatyckich, wyświetlanie znaków Unicode i baza danych obsługująca znaki Unicode itp.
W tym miejscu omówimy szczegółowo zarówno lokalizację, jak i internacjonalizację.
Czego się nauczysz:
- Co to jest testowanie lokalizacji?
- Co to jest internacjonalizacja?
- Zakres testowania
- Testowanie najlepszych praktyk testowania internacjonalizacji
- Czy możliwa jest automatyzacja?
- Wniosek
- rekomendowane lektury
Co to jest testowanie lokalizacji?
Lokalizacja definiuje się jako dostosowanie produktu, aplikacji lub treści do wymogów kulturowych, językowych i innych wymagań określonego regionu lub lokalizacji.
Lokalizacja jest określana w skrócie jako l10n, gdzie 10 to liczba liter między l a n. Kiedy myślisz o lokalizacji, przychodzi na myśl, że interfejs użytkownika i dokumentacja aplikacji są w określonym języku lub lokalizacji. Ale lokalizacja to coś więcej niż tylko to.
Podczas lokalizowania aplikacji należy dostosować następujące ważne obszary:
- Formaty daty i czasu (w tym formaty numeryczne)
- Używana waluta
- Użycie klawiatury
- Sortowanie, wyrównywanie i zestawianie danych
- Schematy kolorów, symbole i ikony
- Tekst i grafika, które w danej kulturze mogą być postrzegane jako wrażliwe lub mogą zostać źle zinterpretowane.
- Różnorodne wymagania prawne
Głównym celem lokalizacji jest nadanie produktowi takiego wyglądu i wrażenia, aby docelowym odbiorcom wyglądał tak, jakby był specjalnie stworzony do ich potrzeb.
Zalecane narzędzie:
# 1) Digivante
Dokładne testy lokalizacyjne Digivante obejmują specjalistyczne testy językowe, techniczne i wizualne z wykorzystaniem ich profesjonalnej społeczności testowej zaufanych testerów, którzy odpowiadają docelowej globalnej grupie demograficznej.
Rozmieszczone w 149 krajach, rozwiązanie lokalizacyjne Digivante zapewnia lokalną wiedzę, której potrzebujesz, aby być naprawdę globalnym. Skontaktuj się z nimi, aby uzyskać więcej informacji.
Lokalizacja i internacjonalizacja są razem nazywane globalizacją. Globalizacja jest na szerszym poziomie. Internacjonalizacja sprawia, że aplikacja obsługuje wiele języków / ustawień regionalnych. Lokalizacja oznacza, że aplikacja obsługuje określone ustawienia regionalne i język.
Poniższy rysunek pomoże ci zrozumieć, jak lokalizacja i internacjonalizacja razem tworzą zglobalizowaną aplikację.
Co to jest internacjonalizacja?
Umiędzynarodowienie jest procesem projektowania i rozwijania produktu, aplikacji lub treści dokumentu w taki sposób, aby umożliwić lokalizację dla dowolnej kultury, regionu lub języka.
Internacjonalizacja jest również zapisana jako i18n, gdzie 18 to liczba liter między mną a n w słowie internacjonalizacja.
Umiędzynarodowienie zazwyczaj obejmuje:
- Zaprojektowanie i rozwijanie aplikacji w taki sposób, aby uprościć wdrożenie lokalizacji i internacjonalizacji aplikacji. Obejmuje to dbanie o prawidłowe renderowanie znaków w różnych językach, konkatenację ciągów itp., Co można zrobić za pomocą Unicode podczas programowania
- Dbając o szerszy obraz podczas tworzenia aplikacji w celu obsługi tekstu dwukierunkowego lub identyfikacji języków, musimy dodać znaczniki w naszym DTD. Ponadto używamy CSS do obsługi tekstu pionowego lub innych niełacińskich cech typograficznych.
- Kod powinien być w stanie wspierać język lokalny i regionalny, a także inne preferencje kulturowe. Obejmuje to użycie predefiniowanych danych lokalizacyjnych i funkcji z istniejących bibliotek. Formaty daty i godziny, lokalne święta kalendarzowe, formaty liczbowe, prezentacja danych, sortowanie, wyrównanie danych, format wyświetlania nazw i adresów itp.
- Oddzielanie lokalizowalnych elementów od kodu źródłowego, aby kod był niezależny. Następnie, zgodnie z wymaganiami użytkownika, zlokalizowane treści mogą być ładowane zgodnie z jego preferencjami.
Internacjonalizacja zasadniczo polega na zaprojektowaniu i wykonaniu aplikacji w celu przygotowania jej do lokalizacji. Nie jest konieczne, aby odbywało się tłumaczenie na język, kulturę i region. Ma to na celu przygotowanie aplikacji do migracji na późniejszym etapie, jeśli ma to nastąpić.
Poniższy diagram pomoże wyjaśnić różnica między nacjonalizacją a internacjonalizacją.
(Kliknij obraz, aby wyświetlić powiększenie)
(wizerunek źródło )
Podsumujmy różnica między lokalizacją a internacjonalizacją w poniższej tabeli:
Testowanie lokalizacji | Testowanie internacjonalizacji |
---|---|
1. Lokalizację definiuje się jako umożliwienie dostosowania produktu, aplikacji lub treści do wymogów kulturowych, językowych i innych wymagań określonego regionu lub lokalizacji. | 1. Umiędzynarodowienie to proces projektowania i rozwijania produktu, aplikacji lub treści dokumentu, który umożliwia lokalizację. |
2. Lokalizacja jest określana jako l10n | 2. Umiędzynarodowienie jest określane jako i18n |
3. Lokalizacja koncentruje się na pomocy online, kontekście GUI, oknach dialogowych, komunikatach o błędach, przeczytaniu mnie / samouczkach, podręcznikach użytkownika, uwagach do wydania, przewodniku instalacji itp. | 3. Internacjonalizacja koncentruje się na testowaniu zgodności, testowaniu funkcjonalności, testowaniu interoperacyjności, testowaniu użyteczności, testowaniu instalacji, testowaniu walidacji interfejsu użytkownika. |
4. Sama lokalizacja oznacza określony język lokalny dla danego regionu | 4. Kod aplikacji jest niezależny od języka |
5. Lokalizacja nie jest na poziomie interfejsu użytkownika | 5. Umiędzynarodowienie jest na poziomie projektowania |
Zakres testowania
Główne punkty centralne, które należy wziąć pod uwagę przy testowaniu lokalizacji i internacjonalizacji, są następujące:
1) Język
- Tekst Unicode do obsługi kodowania znaków
- Systemy liczbowe
- Pisanie wskazówek
- Warianty pisowni
- Zasady kapitalizacji i sortowania
- Skróty klawiaturowe i układy
2) Kultura i region
- Nazwy i tytuły
- Numery rządowe (numer ubezpieczenia społecznego to USA) i paszporty
- Kolory i obrazy
- Numery telefonów, kody pocztowe, formaty adresów
- Rozmiary papieru
- Wagi i rozmiary
- Symbol waluty i pozycja na rynku walutowym
3) Daty i ważne wydarzenia
- Formaty daty i czasu
- Typy kalendarzy (gregoriański, księżycowy itp.)
- Formaty liczb (separatory dziesiętne, grupowanie cyfr itp.)
Testowanie najlepszych praktyk testowania internacjonalizacji
Umiędzynarodowienie aplikacji ma wpływ na różne obszary. Aby zapewnić kompletność zakres badań , musimy skoncentrować nasze testy na następujących ważnych aspektach.
# 1) Lokalizacja treści
Zlokalizowana treść obejmuje grafikę oraz tekst. Treść statyczna i dynamiczna wyświetlana w interfejsie. Treści statyczne, takie jak zakładki, przyciski, etykiety i nazewnictwo elementów internetowych, wiadomość powitalna, tekst pomocy, podpowiedź itp.
Treści dynamiczne, takie jak komunikat wyświetlany po wypełnieniu formularza, komunikat walidacyjny w przypadku błędów lub pole obowiązkowe, które nie wypełnia innych komunikatów specyficznych dla użytkownika itp. Ten rodzaj testów językowych jest wykonywany przez ekspertów językowych lub weryfikowany na podstawie pliku właściwości specyficznych dla języka wysłane przez klienta, które zawiera angielski na inny wyraz językowy oznaczający odwzorowania.
# 2) Oparte na funkcjach
W zależności od regionu niektóre funkcje są dostępne, a inne nie. Testerzy muszą upewnić się, że funkcja jest ukryta w regionie, do którego nie ma zastosowania, oraz powinna być wyświetlana i funkcjonalna dla regionalnych użytkowników, do których ma zastosowanie.
# 3) Świadomość lokalna / kulturowa
Świadomość lokalna / kulturowa obejmuje zrozumienie różnicy między datami a formatowaniem liczb używanym w różnych regionach. Obejmuje to różnice w kalendarzu, święta i święta, formatowanie daty, formatowanie czasu, walutę, formatowanie liczb, adres, numery telefonów, kody pocztowe lub brak kodów pocztowych, jednostki miary itp.
Ponieważ mamy do czynienia z różnymi lokalnymi konwersjami danych z jednego formatu kodowania na inny, musi nastąpić. Bardzo dobra znajomość formatów kodowania i konwersji do iz formatu ma kluczowe znaczenie, ponieważ może również spowodować utratę danych.
# 4) Interfejs użytkownika
Interfejs użytkownika należy przetestować pod kątem dostosowania do wszystkich treści językowych. Powinien się odpowiednio zmienić, aby pomieścić tekst o większej długości bez zniekształcania wyrównania.
Niektóre teksty specyficzne dla języka zajmują więcej miejsca niż inne, więc interfejs powinien być w stanie dostosować się do tej zmiany bez zniekształceń. Na przykład tekst w języku niemieckim zajmuje więcej miejsca, aby przekazać te same informacje, w porównaniu z tekstem w języku angielskim. Dlatego interfejs powinien być dostosowywalny.
pytania do wywiadów dotyczące selenu zadawane w firmach
Musimy przetestować interfejs użytkownika aplikacji, aby upewnić się, że nie zawiera on żadnych defektów, takich jak obcięte ciągi, nakładające się lub źle wyrównane kontrolki, zduplikowane klawisze skrótu itp. Ponadto wszystko musi być przetłumaczone na odpowiedni język.
Obejmuje to:
- Menu na pasku menu
- Komunikat monitujący, ostrzegawczy i ostrzegawczy
- Okna dialogowe (tytuły, przyciski i komunikaty pomocy)
- Zdjęcia
- Paski narzędzi (etykietka narzędzi na pasku narzędzi)
- Informacje o stanie na pasku stanu
# 5) Renderowanie
Ważne jest, aby sprawdzić, czy wszystkie obsługiwane skrypty są poprawnie wyświetlane zgodnie z przypisanymi do nich znakami specyficznymi dla języka. Podczas przeglądania strony w określonym języku skrypty powinny zostać poprawnie wykonane, tj. Nie powinien być wyświetlany żaden błąd skryptu, a wszystkie znaki powinny być wyświetlane w tym języku.
Różne cechy renderowania znaków obejmują dwukierunkowe, kształtowanie zgodnie z kontekstem, zmianę kolejności i łączenie znaków. Inne obejmują łamanie słów, łamanie linii, formatowanie, takie jak uzasadnienie lub wyrównanie do lewej / prawej strony itp.
# 6) Transfer plików
Jeśli aplikacja zawiera operację przesyłania plików, musimy sprawdzić, czy interfejs przesyłania plików jest zlokalizowany zgodnie z wybranym językiem. Plik jest przesyłany pomyślnie lub nie, a przesłany plik nie jest uszkodzony.
Ważne jest, aby określić format kodowania podczas odczytywania pliku zawierającego znaki Unicode. Domyślne kodowanie to UTF-8, gdy nic nie jest określone. W przypadku plików tekstowych zapisanych w formacie kodowania UTF-16 podczas odczytywania przy użyciu UTF -8 tekst będzie nieczytelny. Dlatego kodowanie odgrywa bardzo ważną rolę w przesyłaniu plików.
# 7) Baza danych
Testowanie baz danych dla aplikacji umiędzynarodowionej będzie polegać na obsłudze znaków Unicode w bazie danych. W tym celu dostępne są specjalne typy danych. Typy danych, takie jak nchar, nvarchar i ntext, są definiowane przez serwer SQL, który pomaga przechowywać znaki Unicode.
Następnie prefiks oznacza typy danych National Unicode. Te n typów danych z prefiksem są używane w taki sam sposób, jak oryginalne typy danych char, varchar i text. Jedyną różnicą jest to, że typ danych prefiksu n obsługuje również następujące elementy:
- Potrzeba więcej miejsca na dysku
- Obsługiwanych jest więcej znaków
- Maksymalny rozmiar nchar i nvarchar to 4000, ale dla char i varchar to 8000
Praca z typami danych z prefiksem N jest taka sama, jak ze zwykłymi. Należy zachować ostrożność podczas migracji bazy danych. Odpowiednie typy danych należy zamapować na migrację, w przeciwnym razie dane zostaną utracone.
Korzyści z testowania internacjonalizacji
- Międzynarodowa widoczność produktu
- Wzrost jakości produktu, jeśli jest zbudowany w celu wspierania internacjonalizacji
- Dotrzyj do większej liczby odbiorców na całym świecie
- Produkt wydany na całym świecie przy stosunkowo niższych kosztach
Czy możliwa jest automatyzacja?
Testowanie międzynarodowej aplikacji jest zawsze wyzwaniem dla organizacji. Każdy język obsługiwany przez aplikację może zwielokrotnić liczbę przypadków testowych wymaganych do testowania. Jeśli organizacja szeroko stosuje automatyzację, czy można zbudować i utrzymywać skrypty automatyzacji dla produktu o tak dużym zakresie i typie?
Naprawdę potrzebne jest zbudowanie, testowanie skryptów, które można łatwo rozszerzyć tak, aby obsługiwały wiele języków.
Jak omówiono powyżej, jeśli aplikacja jest zbudowana przy użyciu praktyk I18N i L10N w celu utworzenia wersji podstawowej niewrażliwej na język, w której plik właściwości jest używany do rozwiązywania wymagań językowych. Aplikacja czyta z odpowiedniego pliku właściwości w czasie wykonywania, aby renderować go w wybranym języku. W ten sposób podstawowa wersja aplikacji jest jedyną, która w razie potrzeby ma możliwość zmiany języka interfejsu użytkownika.
Umożliwiło to zautomatyzowanie umiędzynarodowionej aplikacji, ponieważ skrypty testowe są pisane tylko dla wersji podstawowej i łatwo wykonywane we wszystkich językach.
Przed rozpoczęciem automatyzacji musimy potwierdzić, że nazwy lub identyfikatory przypisane do wszystkich elementów w oknach nie zmieniają się wraz ze zmianą języka. Wszystkie obiekty na stronie internetowej, takie jak pola tekstowe, przyciski opcji, listy rozwijane, pola wyboru, hiperłącza, wyskakujące okienka, pola list itp. Powinny mieć unikalny identyfikator (taki jak nazwa lub identyfikator), który powinien być niezależny od języka.
Jeśli mamy pewność, że wszystkie elementy sieci nie są specyficzne dla języka, możemy stworzyć niezwykle wydajny skrypt automatyzacji dla międzynarodowej aplikacji.
Ten link pomoże Ci zrozumieć, jak zautomatyzować umiędzynarodowioną aplikację za pomocą najpopularniejszego narzędzia open source, jakim jest sterownik sieciowy selenu.
Narzędzia do testowania lokalizacji:
Trudno jest przeprowadzić testy lokalizacji tylko przy użyciu dowolnego narzędzia do automatyzacji. Istnieje kilka narzędzi, które mogą bardzo dobrze zautomatyzować niektóre zadania. Oto lista:
- Zautomatyzuj lokalizację interfejsu użytkownika za pomocą IBM Rational Functional Tester
- bakłażan
- Narzędzie do lokalizacji aplikacji .NET http://www.redpin.eu
- Applitools
Przypadki testowe
Należy zapoznać się ten link aby dowiedzieć się o przypadkach testowych mających zastosowanie do testowania lokalizacji i internacjonalizacji.
Wniosek
Testowanie lokalizacji i internalizacji jest wyzwaniem, a dogłębne zrozumienie koncepcji programistycznych jest ważne, aby skutecznie je przetestować.
Również pisanie i utrzymywanie skryptów testów automatyzacji dla międzynarodowego oprogramowania nie jest żmudne, ponieważ skrypt napisany w celu zautomatyzowania testowania podstawowej wersji aplikacji może służyć do testowania dowolnego obsługiwanego języka.
Napisz do nas poniżej, aby przekazać nam swoje komentarze, pytania i doświadczenia z testami lokalizacji / globalizacji / internacjonalizacji.
rekomendowane lektury
- Najlepsze narzędzia do testowania oprogramowania 2021 (Narzędzia do automatyzacji testów QA)
- Testy alfa i testy beta (kompletny przewodnik)
- Testing Primer Pobierz eBook
- Testy funkcjonalne a testy niefunkcjonalne
- Kompletny przewodnik dotyczący testów weryfikacyjnych kompilacji (testy BVT)
- Co to jest testowanie globalizacji (kompletny przewodnik)
- Podręcznik testowania zabezpieczeń aplikacji internetowych
- Rodzaje testowania oprogramowania: różne typy testów ze szczegółami