Typer av inspelningslägen i QTP/UFTAnalog, lågnivå, kontext

⚡ Smart sammanfattning

Typer av inspelningslägen i UFT/QTP bestämma hur OpenText UFT fångar användaråtgärder under testskapandet. Normal, analog och lågnivåinspelning översätter skärmåtgärder till VBScript på olika sätt, och att välja rätt inspelning håller automatiserade tester stabila och tillförlitliga.

  • 🎯 Standardläge: Normal (kontextkänslig) inspelning används automatiskt och känner igen objekt genom UFTs testobjektmodell.
  • 🖱️ Mus trackung: Analog inspelning fångar kontinuerliga musrörelser, perfekt för signaturer och frihandsteckning.
  • 📍 Koordinatregistrering: Lågnivåinspelning lagrar fasta x- och y-klickkoordinater för objekt UFT kan inte känna igen.
  • 🔀 Lägesväxling: Växla mellan lägen mitt under inspelning med Ctrl+F3 för analog och Shift+F3 för lågnivå.
  • 📊 Jämförelse: En tabell sida vid sida förtydligar vilket läge som passar vilket automatiseringsscenario.
  • ⚠️ Risk för resolution: Analoga och lågnivåskript misslyckas om skärmupplösningen ändras mellan inspelnings- och körtid.
  • 💾 Resurskostnad: Analog och lågnivåinspelning förbrukar mer diskutrymme än normal inspelning.

Förståelse UFT/QTP inspelningslägen är avgörande innan man automatiserar något test, eftersom det valda läget avgör hur Snabbtestproffs fångar varje användaråtgärd och omvandlar den till körbar VBScript. Inspelning är det snabbaste sättet att skapa ett första utkast av ett test, och verktyget kan växla mellan tre inbyggda lägen beroende på hur väl det känner igen objekten på skärmen.

HP UFT (QTP) stöder 3 typer av inspelningslägen:

  1. Normal (kontextkänslig) inspelning
  2. Analog inspelning
  3. Lågnivåinspelning

Varje läge registrerar interaktioner på olika sätt, och genom att välja rätt läge undviker man känsliga skript som bryts i samma ögonblick som skärmupplösningen eller objektlayouten ändras. Avsnitten nedan förklarar hur varje läge fungerar, när det ska användas och hur det resulterande inspelat manus skiljer sig mellan dem.

Normalt (kontextkänsligt) inspelningsläge

Normal inspelning, även kallad kontextkänslig inspelning, är standardläget varje gång du klickar på inspelningsknappen i UFT/QTPDen förlitar sig på verktygets testobjektmodell för att känna igen varje kontroll oavsett dess exakta position på skärmen.

  • Det är standardinspelningsläget och drar full nytta av Quick Test Professionals testobjektmodell.
  • Den känner igen objekt i den testade applikationen (AUT) oavsett deras plats på skärmen.
  • Den registrerar objekten i programmet och de åtgärder som utförs på dem, till exempel ett klick, ett val eller en textinmatning.
  • Eftersom det lagrar meningsfulla objektegenskaper istället för råa koordinater, förblir skript som spelas in i det här läget stabila oavsett upplösning och layoutändringar.

De flesta automationsingenjörer använder normal inspelning för större delen av ett test och växlar endast till analog eller lågnivå för det lilla antal steg som normal inspelning inte kan fånga korrekt.

Analogt inspelningsläge

Analog inspelning tracks den bokstavliga banan för muspekaren istället för de objekt den vidrör. Använd den bara för operationer som verkligen kräver musrörelser på pixelnivå, till exempel att ta en signatur eller en frihandsteckning.

  • UFT rekord och tracregistrerar varje rörelse med musen, i förhållande till antingen skärmen eller programfönstret, när musen dras runt.
  • Mikrofokus UFTs analoga inspelning spelas in som en Track och lagras i testkatalogen.
  • Det är användbart för att spela in operationer som inte kan spelas in på objektnivå, till exempel en signatur som skapas genom att dra med musen.
  • Inspelning kan göras relativt till skärmen, vilket krävs när en åtgärd sträcker sig över flera fönster, till exempel att dra ett objekt från ett fönster till ett annat.
  • Inspelning kan också göras relativt till fönstret, vilket är ett bättre val när hela operationen sker i ett enda fönster.

Ett inspelat analogt steg spelas upp med KörAnalog metod, som visas nedan.

Dim app
Set app = Window("Paint")
' Replay a mouse track recorded in Analog mode
app.RunAnalog "Track1"
Set app = Nothing

Analoga tester är upplösningsberoende, så skärmupplösningen vid inspelningstillfället och vid körning måste matcha exakt, annars misslyckas skriptet.

Lågnivåinspelningsläge

Lågnivåinspelning fångar de exakta x- och y-koordinaterna där en operation sker, oavsett om UFT kan identifiera det underliggande objektet eller dess egenskaper. UFT växlar automatiskt till det här läget när den möter ett objekt den inte känner igen, och det kan också väljas manuellt från inspelningsmenyn.

  • Det möjliggör inspelning på vilket objekt som helst i applikationen, oavsett om UFT känner igen det specifika objektet eller operationen.
  • Den registrerar på objektnivå och behandlar varje runtime-objekt som antingen ett generiskt Window- eller WinObject-testobjekt.
  • Den används när de exakta koordinaterna för en operation är viktiga, till exempel en hashmap-bild där klick på olika regioner öppnar olika länkar.
  • Det är reservläget för miljöer eller anpassade kontroller som UFT har inte nativt stöd.
  • Lågnivåinspelning fångar x- och y-koordinaterna för varje klick, men till skillnad från analog inspelning gör den inte det. track kontinuerlig musrörelse.

Ett lågnivåsteg registreras som ett koordinatbaserat klick, som visas i VBScriptet nedan.

Dim win
Set win = Window("Order Form").WinObject("Custom Grid")
' Low-Level recording stores the click as fixed x,y coordinates
win.Click 125, 48
Set win = Nothing

Eftersom koordinaterna är fasta måste samma skärmposition vara tillgänglig vid körning. Alla ändringar i fönsterstorlek, upplösning eller kontrollplacering kan göra att skriptet klickar på fel plats.

Normal vs. analog vs. lågnivåinspelning: Vilket läge att använda

Att välja rätt inspelningsläge beror på hur UFT identifierar objektet som interageras med och om den exakta skärmpositionen spelar roll. Tabellen nedan jämför de tre lägena sida vid sida.

InspelningslägeVad den fångarAnvänds bäst förDisk-/minnesanvändning
Normal (kontextkänslig)Objekt och de operationer som utförs på demStandardåtgärder i gränssnittet i program som stödsLåg
AnalogKontinuerlig musrörelse och tangenttryckningar i förhållande till skärmen eller fönstretSignaturer, ritningar, frihandsmusbanorHög
Låg nivåFasta x- och y-koordinater för klick, oberoende av objektigenkänningKontroller, bildkartor och anpassade objekt som inte stödsHög

Som regel bör du behålla normal inspelning som standard och endast växla till analog eller lågnivå för de specifika steg som normal inspelning inte kan fånga upp tillförlitligt. Växla sedan tillbaka till normal inspelning omedelbart därefter.

Hur man växlar mellan inspelningslägen i UFT

UFT tillåter att inspelningsläget ändras när som helst under samma inspelningssession, så separata tester behövs inte för varje läge. Följ stegen nedan för att byta läge under inspelning.

Steg 1) Öppna testet och klicka på knappen Inspelning, eller tryck på F6, för att starta inspelningen i standardläget Normal.

Steg 2) När ett steg nås som Normal inspelning inte kan fånga korrekt, öppna Inspelningsmenyn och välj Inspelning > Analog inspelning, eller tryck Ctrl+F3.

Steg 3) Utför den musåtgärd som behövs tracked, som att rita en signatur, och UFT sparar det som en Track-filen.

Steg 4) Klicka på Spela in > Analog inspelning igen, eller tryck på Ctrl+F3, för att stänga av analog inspelning och återgå till normalt läge.

Steg 5) För ett steg som involverar ett okänt objekt, välj Spela in > Lågnivåinspelning eller tryck på Shift+F3, utför åtgärden och tryck sedan på Shift+F3 igen för att växla tillbaka till normal inspelning.

Steg 6) Slutför de återstående stegen i normalt läge och klicka sedan på Stopp för att avsluta inspelningen och spara testet.

Tänk på följande punkter när du byter läge:

  • Det går bara att växla till analog eller lågnivåinspelning under aktiv inspelning, inte under redigering av ett redan inspelat test.
  • UFT kommer ihåg de senast använda inspelnings- och körinställningarna, så granska dem varje gång en ny inspelningssession startar.
  • Att blanda lägen inom en teståtgärd är normalt och förväntat; de flesta verkliga tester använder normal inspelning för de allra flesta steg.

Efter inspelningen, öppna testet i nyckelordsvyn eller expertvyn för att bekräfta att varje lägesspecifikt steg registrerades som förväntat innan du lägger till kontrollpunkter eller verifiera objektidentifiering.

Begränsningar och bästa praxis för inspelningsläge

Analog och lågnivåinspelning är användbara reservalternativ, men de har avvägningar som är värda att förstå innan man förlitar sig på dem i en regressionssvit.

⚠ Tips: Reservera analog och lågnivåinspelning för de få steg som normal inspelning verkligen inte kan hantera. Överanvändning av båda lägena gör skripten ömtåliga och svårare att underhålla.

  • Både analog och lågnivåinspelning kräver mer diskutrymme än normal inspelning eftersom de lagrar råa koordinat- eller rörelsedata.
  • Skärmpositionerna vid inspelningstid och körtid måste matcha exakt, annars misslyckas skriptet eller klickar på fel element.
  • Lågnivåinspelning gör det inte track kontinuerlig musrörelse, endast diskreta klickkoordinater.
  • UFT kan växla till lågnivåinspelning automatiskt när den stöter på ett objekt eller en miljö som den inte stöder, även utan att läget väljs manuellt.
  • Grunderna i VBScript som används i inspelade steg, såsom variabler och objektreferenser, behandlas i VBScript-handledning.

Lär dig kontext-, analog- och lågnivåinspelningslägen med ett exempel i följande video.

Klicka här. om videon inte är tillgänglig

Vanliga frågor

UFT använder normal (kontextkänslig) inspelning som standard. Den förlitar sig på testobjektmodellen för att känna igen objekt och deras egenskaper, vilket håller inspelade skript stabila oavsett skärmlayoutändringar.

Ja. Tryck Ctrl+F3 för att växla mellan analog inspelning och Shift+F3 för att växla mellan lågnivåinspelning UFT spelar in aktivt och växla sedan tillbaka för att fortsätta i normalt läge inom samma session.

Lågnivåinspelning lagrar fasta x- och y-koordinater istället för objektegenskaper. Om skärmupplösningen, fönsterstorleken eller layouten ändras före uppspelning pekar dessa koordinater inte längre på rätt kontroll.

Modern AI-baserad objektidentifiering i verktyg som UFT En förbättrar igenkänningen av anpassade och dynamiska kontroller, vilket minskar hur ofta testare måste återgå till koordinatbaserad lågnivåinspelning.

Självläkande ramverk börjar fortfarande från en inspelad baslinje, vanligtvis Normal inspelning. AI uppdaterar sedan trasiga objektidentifierare automatiskt, men den initiala inspelningen följer fortfarande. UFTs standardinspelningslägen.

Sammanfatta detta inlägg med: