Atsitiktinis vartotojo agento generatorius žiniatinklio kūrimo testavimui

Generuokite realistiškas naršyklės vartotojo agento eilutes su galimybėmis filtruoti pagal įrenginio tipą, naršyklės šeimą ir operacinę sistemą. Puikiai tinka žiniatinklio kūrimo testavimui ir suderinamumo patikrinimams.

Atsitiktinis naudotojo agento generatorius

Sugeneruokite atsitiktinius, realistiškus naršyklės naudotojo agento eilutes web kūrimo testavimui.

Sugeneruotas naudotojo agentas

Kopijuoti
📚

Dokumentacija

Atsitiktinis naudotojo agento generatorius

Įvadas

Naudotojo agento eilutė yra specifinė teksto identifikacija, kurią interneto naršyklės ir kitos programos siunčia svetainėms, kad identifikuotų save. Ši eilutė paprastai apima informaciją apie naršyklę, operacinę sistemą, įrenginio tipą ir naudojamą atvaizdavimo variklį. Interneto kūrėjams ir testuotojams prieiga prie įvairių realistiškų naudotojo agento eilutėmis yra būtina testuojant svetainės suderinamumą, reaguojamumą ir funkcionalumą skirtingose platformose.

Šis Atsitiktinis naudotojo agento generatorius sukuria autentiškai atrodantčias naudotojo agento eilutes, remiantis jūsų pasirinktais parametrais. Galite filtruoti pagal įrenginio tipą (darbalaukis arba mobilusis), naršyklės šeimą (Chrome, Firefox, Safari arba Edge) ir operacinę sistemą, kad sugeneruotumėte naudotojo agentus, kurie atitinka jūsų testavimo reikalavimus. Įrankis suteikia paprastą sąsają su galimybėmis kopijuoti sugeneruotą eilutę vienu paspaudimu ir akimirksniu generuoti naujas atsitiktines eilutes.

Naudotojo agento struktūra

Naudotojo agento eilutės seka specifinius modelius, priklausomai nuo naršyklės ir platformos, tačiau paprastai jos apima kelis bendrus komponentus:

  1. Naršyklės identifikatorius: Paprastai prasideda nuo "Mozilla/5.0" dėl istorinių suderinamumo priežasčių
  2. Platformos/OS informacija: Informacija apie operacinę sistemą (Windows, macOS, Android, iOS)
  3. Naršyklės variklis: Atvaizdavimo variklis (pvz., Gecko, WebKit arba Blink)
  4. Naršyklės detalės: Specifinė naršyklės pavadinimas ir versija

Štai tipinių naudotojo agento struktūrų išskaidymas pagrindinėms naršyklėms:

Chrome

1Mozilla/5.0 (platform; details) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/version Safari/537.36
2

Firefox

1Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion
2

Safari

1Mozilla/5.0 (platform) AppleWebKit/webkitversion (KHTML, like Gecko) Version/safariversion Safari/safariversion
2

Edge

1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/chromiumversion Safari/537.36 Edg/edgeversion
2

Platformos skyrius labai skiriasi tarp darbalaukio ir mobiliųjų įrenginių:

Darbalaukio pavyzdžiai:

  • Windows: Windows NT 10.0; Win64; x64
  • macOS: Macintosh; Intel Mac OS X 10_15_7
  • Linux: X11; Linux x86_64

Mobilieji pavyzdžiai:

  • Android: Linux; Android 12; SM-G998B
  • iOS: iPhone; CPU iPhone OS 15_4 like Mac OS X

Įrenginio tipo skirtumai

Darbalaukio naudotojo agentai

Darbalaukio naudotojo agentai paprastai apima specifinę operacinės sistemos informaciją, architektūros detales (pvz., x86_64 arba Win64) ir kartais kalbos nuostatas. Jie paprastai yra nuoseklesni tarp naršyklių nei mobilieji naudotojo agentai.

Mobilieji naudotojo agentai

Mobilieji naudotojo agentai apima įrenginio modelio informaciją, mobiliųjų operacinių sistemų versijas ir dažnai pabaigoje turi žodį "Mobile". Mobilusis Safari iOS įrenginiuose apims "iPhone" arba "iPad" identifikatorius, o Android įrenginiuose - gamintojo ir modelio numerį.

Naršyklės versijų modeliai

Kiekviena naršyklė seka skirtingus versijų modelius:

  • Chrome: Naudoja keturių dalių versijų numerius (pvz., 96.0.4664.110)
  • Firefox: Paprastai naudoja dviejų arba trijų dalių versijų numerius (pvz., 95.0 arba 95.0.2)
  • Safari: Naudoja paprastus versijų numerius, tokius kaip 15.2
  • Edge: Naudoja versijų numerius, panašius į Chrome, tačiau su savo Edge versija (pvz., 96.0.1054.62)

Naudojimo atvejai

Atsitiktinis naudotojo agento generavimas turi keletą svarbių taikymo sričių interneto kūrime ir testavime:

  1. Kryžminio naršyklės suderinamumo testavimas: Patikrinkite, kaip jūsų svetainė atvaizduojama ir veikia skirtingose naršyklėse, nesukurdami kelių naršyklių ar nenaudodami kelių įrenginių.

  2. Reaguojančio dizaino testavimas: Patikrinkite, ar jūsų svetainė teisingai nustato mobiliuosius ir darbalaukio įrenginius ir pateikia tinkamą išdėstymą.

  3. Funkcijų aptikimo patikrinimas: Užtikrinkite, kad jūsų svetainės funkcijų aptikimo mechanizmai veiktų teisingai skirtingoms naršyklių galimybėms.

  4. QA ir automatizuotas testavimas: Įtraukite skirtingus naudotojo agentus į savo automatizuotų testavimo scenarijų, kad simuliuotumėte įvairias naudotojų aplinkas.

  5. Veiklos testavimas: Analizuokite, kaip jūsų svetainė veikia, kai ji pasiekiama iš skirtingų naršyklių aplinkų.

  6. Naršyklės specifinių problemų derinimas: Atkurkite ir išspręskite klaidas, kurios atsiranda tik tam tikrose naršyklėse ar versijose.

  7. API testavimas: Patikrinkite, kaip jūsų API tvarko užklausas iš skirtingų klientų programų.

Alternatyvos

Nors mūsų atsitiktinis naudotojo agento generatorius yra naudingas daugeliui testavimo scenarijų, yra ir alternatyvių požiūrių:

  1. Naršyklės testavimo paslaugos: Tokios platformos kaip BrowserStack, Sauce Labs arba LambdaTest teikia tikras naršyklių instancijas testavimui, o ne tik simuliuojant naudotojo agentą.

  2. Naršyklės kūrėjo įrankiai: Dauguma šiuolaikinių naršyklių leidžia jums perrašyti naudotojo agentą per savo kūrėjo įrankius, kas gali būti naudinga greitiems testams.

  3. Naudotojo agento keitiklio plėtiniai: Naršyklės plėtiniai, leidžiantys jums perjungti tarp iš anksto nustatytų naudotojo agentų naršant.

  4. Virtualios mašinos arba konteineriai: Vykdydami tikras skirtingų operacinių sistemų ir naršyklių instancijas, kad gautumėte tiksliausią testavimą.

  5. Be galvos naršyklių testavimas: Naudodami įrankius, tokius kaip Puppeteer arba Selenium, programiškai valdykite naršykles su skirtingais naudotojo agentų nustatymais.

Kiekviena alternatyva turi savo privalumų ir gali būti tinkamesnė priklausomai nuo jūsų specifinių testavimo poreikių ir išteklių.

Istorija

Naudotojo agento eilutės koncepcija atsirado ankstyvuoju Pasaulinio tinklo laikotarpiu. Terminas "naudotojo agentas" kyla iš HTTP specifikacijos, kur jis nurodo kliento programą, siunčiančią užklausą į interneto serverį.

Ankstyvieji laikai (1990-ieji)

Pirmasis plačiai naudojamas naršyklė, NCSA Mosaic, turėjo paprastą naudotojo agento eilutę, kuri identifikavo naršyklės pavadinimą ir versiją. Kai buvo išleista Netscape Navigator, ji naudojo panašų formatą. Tačiau, kai interneto serveriai pradėjo teikti skirtingą turinį, priklausomai nuo naršyklės, atsirado praktika, vadinama "naršyklės uostymu".

Naršyklių karai ir naudotojo agento apgaudinėjimas (1990-ųjų pabaiga)

Naršyklių karų metu tarp Netscape ir Internet Explorer, svetainės dažnai pateikdavo optimizuotą turinį tik konkrečioms naršyklėms. Norint užtikrinti suderinamumą, naršyklės pradėjo įtraukti eilutes, kurios identifikuotų save kaip kitas naršykles. Būtent dėl šios priežasties dauguma šiuolaikinių naršyklių vis dar įtraukia "Mozilla" į savo naudotojo agento eilutes, nuorodą į Netscape Navigatoro kodinį pavadinimą.

Mobilioji revoliucija (2000-2010)

Mobilųjų įrenginių augimas įvedė naują sudėtingumą į naudotojo agento eilutes. Mobiliosios naršyklės turėjo identifikuoti save kaip mobiliąsias, kad gautų tinkamą turinį, todėl buvo pridėta įrenginio identifikatorių ir mobiliųjų specifinių žodžių.

Šiuolaikiniai iššūkiai (2010-dabar)

Augant interneto ekosistemai, naudotojo agento eilutės tapo vis sudėtingesnės. Jos dabar apima nuorodas į kelis naršyklių variklius (pvz., "AppleWebKit" ir "Gecko"), kad užtikrintų suderinamumą, net jei šie varikliai iš tikrųjų nėra naudojami.

Ši sudėtingumas sukėlė sunkumų tiksliai analizuojant naudotojo agento eilutes, ir kai kurios interneto standartų grupės pasiūlė deponuoti arba supaprastinti naudotojo agento eilutes, siekiant pereiti prie struktūrizuotų klientų užuominų. Tačiau dėl atgalinio suderinamumo priežasčių tradicinė naudotojo agento eilutė išlieka esmine interneto naršymo dalimi.

Kodo pavyzdžiai

Štai pavyzdžiai, kaip dirbti su naudotojo agento eilutėmis įvairiose programavimo kalbose:

1// JavaScript: Naršyklės tipo nustatymas iš naudotojo agento
2function detectBrowser() {
3  const userAgent = navigator.userAgent;
4  
5  if (userAgent.indexOf("Firefox") > -1) {
6    return "Firefox";
7  } else if (userAgent.indexOf("SamsungBrowser") > -1) {
8    return "Samsung Browser";
9  } else if (userAgent.indexOf("Opera") > -1 || userAgent.indexOf("OPR") > -1) {
10    return "Opera";
11  } else if (userAgent.indexOf("Trident") > -1) {
12    return "Internet Explorer";
13  } else if (userAgent.indexOf("Edge") > -1) {
14    return "Edge";
15  } else if (userAgent.indexOf("Chrome") > -1) {
16    return "Chrome";
17  } else if (userAgent.indexOf("Safari") > -1) {
18    return "Safari";
19  } else {
20    return "Unknown";
21  }
22}
23
24// Naudojimas
25console.log("Jūs naudojate: " + detectBrowser());
26

Dažni naudotojo agento modeliai

Štai keletas tikrų naudotojo agento eilutės pavyzdžių skirtingoms naršyklėms ir platformoms:

Darbalaukio naršyklės

Chrome Windows:

1Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36
2

Firefox macOS:

1Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:95.0) Gecko/20100101 Firefox/95.0
2

Safari macOS:

1Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.2 Safari/605.1.15
2

Edge Windows:

1Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36 Edg/96.0.1054.62
2

Mobiliosios naršyklės

Chrome Android:

1Mozilla/5.0 (Linux; Android 12; SM-G998B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.104 Mobile Safari/537.36
2

Safari iPhone:

1Mozilla/5.0 (iPhone; CPU iPhone OS 15_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.2 Mobile/15E148 Safari/604.1
2

Firefox Android:

1Mozilla/5.0 (Android 12; Mobile; rv:95.0) Gecko/95.0 Firefox/95.0
2

Samsung Internet Galaxy:

1Mozilla/5.0 (Linux; Android 12; SM-G998B) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/16.0 Chrome/92.0.4515.166 Mobile Safari/537.36
2

Nuorodos

  1. "Naudotojo agentas." MDN Web Docs, Mozilla, https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent

  2. "Naršyklės naudotojo agento eilutės." WhatIsMyBrowser.com, https://www.whatismybrowser.com/guides/the-latest-user-agent/

  3. "HTTP Naudotojo agento antraštė paaiškinta." KeyCDN, https://www.keycdn.com/support/user-agent

  4. "Kliento užuominos." MDN Web Docs, Mozilla, https://developer.mozilla.org/en-US/docs/Web/HTTP/Client_hints

  5. "Naudotojo agento eilutės istorija." WebAIM, https://webaim.org/blog/user-agent-string-history/

  6. "Naršyklės aptikimas naudojant naudotojo agentą." Google Developers, https://developer.chrome.com/docs/multidevice/user-agent/