Być może słyszeliście o Chrome Variations, które są też nazywane testami polowymi Chrome lub nawet wewnętrznym nazwiskiem kodowym Chrome Finch.
Wszystkie te nazwy odnoszą się do tego samego: mechanizmu testowania nowych funkcji lub zmian w przeglądarce Chrome lub w ChromeOS, czyli systemie operacyjnym Chrome, który działa na Chromebookach.
Co to są odmiany Chrome?
Odmiany w Chrome umożliwiają aktywowanie nowej funkcji, jej dezaktywowanie lub wypróbowanie zmiany funkcji dla podzbioru użytkowników.
Nie wszystkie funkcje w Chrome są wprowadzane za pomocą odmian Chrome. Jednak zespół Chrome może korzystać z Chrome Variations w dowolnym momencie. Odmiany Chrome można wykorzystać do:
- Zezwalanie inżynierom Chrome na szczególną ostrożność podczas wprowadzania określonej zmiany. Mogą uważać, że działanie przeglądarki może być zagrożone lub że występują inne problemy.
- weryfikować hipotezy dotyczące zmian lub aktualizacji; Na przykład w przypadku procenta użytkowników w grupie Chrome Variations zmodyfikowaliśmy parametry protokołu sieciowego QUIC, aby przyspieszyć działanie Chrome w rzeczywistych warunkach sieciowych użytkowników.
- Sterowanie aktywacją funkcji testowania wersji próbnej. Domyślnie próby wersji próbnej są włączone na wszystkich stronach, które udostępniają prawidłowy token wersji próbnej. W niektórych przypadkach funkcja może nie być dostępna dla niektórych użytkowników, nawet jeśli odwiedzą oni stronę z prawidłowym tokenem wersji próbnej.
Jak działają odmiany Chrome?
Co 30 minut na komputerze lub urządzeniu mobilnym albo przy każdym uruchomieniu przeglądarki Chrome przeglądarka wysyła żądanie do backendu Chrome, aby pobrać plik konfiguracji odmian Chrome, który jest nazywany dane zaczytania. Do udostępniania nasion w Chrome Variations służy specjalny serwer. Chrome wysyła żądanie HTTPS do serwera, a serwer odpowiada delta-skompresowanym ziarnem.
Gdy Chrome na Twoim urządzeniu skontaktuje się z serwerem, aby poprosić o plik początkowy, Chrome przekaże numer wersji i system operacyjny, na którym działa. Plik zwracany przez backend platformy Odmiany Chrome służy do włączania i wyłączania funkcji oraz do określania odmian funkcji.
Chrome używa danych z pliku zaczynów i z lokalnie przechowywanego zaczynu do losowania, aby losowo przypisać przeglądarkę do grupy wariantów. Przeglądarka na urządzeniu śledzi, do której grupy wariantów należy.
Wdrażanie funkcji i kanały Chrome
Jednym z najważniejszych zastosowań platformy Odmiany Chrome jest stopniowe wprowadzanie zmian lub nowych funkcji w przypadku określonego odsetka klientów Chrome. Jest to kluczowe dla złożonej aplikacji takiej jak Chrome, która ma miliardy użytkowników, tysiące typów urządzeń na wielu platformach, obsługuje dziesiątki różnych języków i miliony różnych aplikacji i witryn internetowych.
Chrome otrzymuje cenne opinie na podstawie korzystania z Chrome Canary, Chrome Dev i Chrome Beta oraz testów. Za pomocą Chrome Variations możemy aktywować lub dezaktywować funkcje w dowolnym z tych kanałów wersji. Jednak te kanały są używane głównie przez programistów i innych specjalistów.
Użytkownicy wersji stabilnej przeglądarki Chrome korzystają z Chrome w inny sposób i w znacznie większej liczbie, dlatego zawsze musimy sprawdzać wersję stabilną. Pozwala nam to rozwiązywać problemy występujące podczas normalnego korzystania z przeglądarki. Inżynierowie Chrome nie zawsze mogą przewidzieć, jak użytkownicy zareagują na zmiany i nowe funkcje.
Odmiany Chrome umożliwiają sprawdzanie danych i statystyk dotyczących stabilnej wersji Chrome. Dzięki pomiarowi wpływu zmian w Chrome Stable możemy udostępniać najlepsze funkcje i tworzyć lepszą przeglądarkę, nawet gdy kompromisy są złożone.
Kiedy inżynierowie z zespołu Chrome używają odmian Chrome?
Chrome potrzebuje wersji Chrome Variations z 3 głównych powodów.
Aktywowanie nowej funkcji
Korzystanie z odmian Chrome w celu uzyskania kontroli nad aktywacją nowej funkcji jest szczególnie przydatne w przypadku działań, które mogą być w jakimś stopniu bardziej ryzykowne lub mogą wpływać na wydajność.
Odmiany Chrome umożliwiają nam udostępnianie nowej funkcji podzbiorowi użytkowników. Inżynierowie Chrome mogą wtedy sprawdzić różnice w wydajności lub inne rodzaje informacji zwrotnych z grupy wariantowej.
Dezaktywowanie funkcji
Odmiany Chrome mogą służyć jako mechanizm bezpieczeństwa do wyłączania funkcji, chociaż dzieje się to rzadko.
Na przykład nowa funkcja sieci może stać się celem ataku typu DoS. Możesz szybko włączyć tę funkcję za pomocą Chrome Variations, ponieważ konfiguracja Chrome Variations jest pobierana co 30 minut, a ustawienia są aktywowane za każdym razem, gdy uruchamiasz Chrome.
Z kolei aktualizacja Chrome i czekanie na rozpowszechnienie nowej wersji wśród miliardów użytkowników zajęłoby znacznie więcej czasu.
Testowanie zmian w funkcji
Odmiany Chrome można używać do sprawdzania zmian i aktualizacji. Możemy na przykład dostosować poziom trudności gry Dino w Chrome Offline, aby zwiększyć atrakcyjność interakcji.
Odmiany Chrome można też używać do badania długofalowych skutków nowych funkcji. W tym celu używamy mechanizmu Chrome Variations, aby wstrzymać funkcje dla niewielkiej grupy użytkowników, na przykład dla 1% użytkowników lub mniej. Grupa kontrolna może być przydatna do sprawdzania zmian i efektów ubocznych, które stają się widoczne dopiero z czasem.
Grupa wstrzymana może być szczególnie ważna w przypadku zmian w interfejsie, ponieważ użytkownicy prawdopodobnie będą korzystać z nowej funkcji, ale w dłuższej perspektywie mogą zachowywać się inaczej.
Na przykład wprowadziliśmy w Chrome selektor zdjęć, ale funkcja ta była tymczasowo wyłączona w przypadku niewielkiego odsetka użytkowników, aby można było porównać wyniki. Nowy selektor zdjęć na Androida udostępniliśmy dużej grupie użytkowników. Początkowo zaobserwowaliśmy znaczny wzrost liczby zdjęć udostępnianych przez tę grupę w internecie. Jednak w ciągu 6 miesięcy, w których mieliśmy wariant z zatrzymaniem, zauważyliśmy znaczny spadek wzrostu liczby użytkowników. Wynikało to z tego, że dostępność nowego selektora zdjęć zachęciła witryny do dodania atrybutu accept do elementów formularza przesyłania plików, co przełożyło się na lepsze wrażenia wszystkich użytkowników.
W jaki sposób platforma Odmiany Chrome jest używana do weryfikacji?
Jeśli włączysz ustawienie „Pomóż w ulepszaniu funkcji i działania Chrome” (chrome://settings/syncSetup?search=improve
), Chrome może automatycznie monitorować i przesyłać dane do backendu Chrome za pomocą analizy danych użytkownika (UMA).
Przykłady anonimowych statystyk dotyczących korzystania z Chrome znajdziesz na stronie chromestatus.com/metrics, np. odsetek stron, które korzystają z właściwości CSS lub funkcji HTML albo JavaScript.
Zmiany w Chrome są szczególnie przydatne do porównywania statystyk jednej grupy użytkowników z inną. Na przykład funkcja może być włączona dla niektórych użytkowników, a nie dla innych, a Chrome może porównywać dane dla każdej grupy. Te dane mogą obejmować wykorzystanie pamięci, czas wczytywania strony lub korzystanie z funkcji przeglądarki. Dzięki temu inżynierowie Chrome mogą porównywać wydajność lub inne dane między użytkownikami, którzy mają włączoną daną funkcję, wyłączoną daną funkcję lub korzystają z różnych wersji tej samej funkcji.
Testy w warunkach rzeczywistych
Każdy zestaw wariantów funkcji nazywa się badaniem lub testem, a każdy z nich ma określony czas trwania. Po zakończeniu badania wszyscy użytkownicy, którzy zostali uwzględnieni w niestandardowej grupie zachowań, otrzymają domyślne ustawienie Chrome dla danej funkcji: włączone lub wyłączone.
Większość funkcji, które można kontrolować za pomocą funkcji Chrome Variations, odpowiada flagom, które można ustawić na stronie chrome://flags
. Jeśli uruchamiasz Chrome z poziomu wiersza poleceń, możesz użyć flag --enable-features
i --disable-features
, aby skonfigurować odmiany Chrome.
Flaga --reset-variation-state
wymusza zresetowanie stanu odmian Chrome w przypadku bieżącego klienta. Oznacza to, że klient może przejść do innych grup odmian Chrome.
Odmiany Chrome dla firm
W przypadku klientów biznesowych Chrome udostępnia też zasady dotyczące odmian Chrome, które umożliwiają zarządzanie odmianami Chrome. Zalecamy pozostawienie włączonych odmian Chrome, aby Chrome mógł szybko dostarczać kluczowe poprawki zabezpieczeń.