Kontrollpunkter i QTP/UFT med eksempel
⚡ Smart oppsummering
Kontrollpunkter i UFT/QTP valider om et program returnerer den nøyaktige egenskapen, teksten, bildet eller databaseverdien en tester forventer i et trinn, og gjør dermed en innspilt avspilling om til en bestått- eller ikke-bestått-vurdering som automatiserte team kan stole på.

Hva er et kontrollpunkt i UFT/QTP?
A sjekkpunkt in UFT/QTP er et verifiseringspunkt som sammenligner gjeldende verdi av en spesifisert objektegenskap, sideattributt eller datakilde med en forventet verdi som ble registrert tidligere i testen. Hvis gjeldende og forventede verdier samsvarer, UFT registrerer en BESTÅTT-status; hvis de ikke gjør det, registreres en IKKE BESTÅTT-status.
Kontrollpunkter konverterer et skript som bare spiller av handlinger til et skript som verifiserer resultater. Et innspilt skript kan fullføre hvert trinn, selv når applikasjonen som testes viser feil tekst, feil bilde eller en ødelagt databasepost – et kontrollpunkt er det som fanger opp denne forskjellen og rapporterer den.
Hvorfor bruke kontrollpunkter i testautomatisering?
Innspilling av et skript spiller bare av en sekvens med klikk og tastetrykk; det bekrefter aldri om applikasjonen ga riktig resultat. Kontrollpunkter tetter dette gapet ved å gjøre hver registrerte handling om til en testbar påstand med et målbart resultat.
- Konverter avspilling til verifisering, slik at hver kjøring produserer en tydelig BESTÅTT eller IKKE BESTÅTT i stedet for bare et fullført skript.
- Fang opp regresjoner tidlig, før en feil når en versjon som testere antar er stabil.
- Valider data som er usynlige under manuell observasjon, for eksempel XML-nyttelaster, databaserader eller egenskaper for skjulte objekter.
- Dokumenter forventet oppførsel, slik at alle som leser skriptet forstår hva «riktig» betyr for det trinnet.
Fordi kontrollpunkter kjører automatisk ved hver utførelse, fjerner de behovet for at en tester manuelt inspiserer hvert skjermbilde etter hver syklus, noe som er det som gjør UFT/QTP praktisk for gjentatte Regresjonstesting på tvers av bygg.
Typer kontrollpunkter i UFT/QTP
UFT/QTP tilbyr flere kontrollpunkttyper slik at en tester kan validere nøyaktig det aspektet ved applikasjonen som er viktig i et gitt trinn – en statisk egenskap, en tekstblokk, et bitmap-bilde, en databasepost eller et helt XML-dokument. Å velge typen som samsvarer med objektet som testes, holder trinnet fokusert og enkelt å vedlikeholde.
- Standard sjekkpunkt: Sammenligner de forventede verdiene for objektegenskaper som ble registrert under opptak med objektets gjeldende verdier under en kjøreøkt. Den støttes av alle tilleggsmiljøer.
- Sidekontrollpunkt: Et standard sjekkpunkt opprettet for en nettside. Det sjekker det totale antallet lenker og bilder på siden og kan måle sidens lastetid.
- Tekstkontrollpunkt: Verifiserer at spesifikk tekst vises innenfor et definert område på en nettside eller et Windows-basert applikasjon.
- Kontrollpunkt for tekstområde: Verifiserer at en tekststreng vises innenfor et definert skjermområde på en Windows-basert applikasjon, i henhold til kriterier som samsvar med store og små bokstaver eller jokertegn.
- Bitmap-sjekkpunkt: Sjekker bitmapet til et bilde eller en hel nettside med en piksel-for-piksel-sammenligning mellom det faktiske og det forventede bildet.
- Bildekontrollpunkt: Sjekker egenskapene til et webbilde, for eksempel kildefilens plassering. I motsetning til et Bitmap-sjekkpunkt sammenligner det ikke piksler.
- Tilgjengelighetskontrollpunkt: Verifiserer samsvar med World Wide Web Consortium (W3C) sine retningslinjer for nettbasert teknologi, noe som gjør det enklere for funksjonshemmede å bruke applikasjonen.
- Database-sjekkpunkt: Kjører en spørring på rekordtid og lagrer de returnerte databaseverdiene som forventede verdier; den samme spørringen kjøres på nytt ved kjøretid slik at de faktiske og forventede verdiene kan sammenlignes.
- Bordkontrollpunkt: Kontrollerer dynamisk innholdet i celler i en tabell eller et rutenett, sammen med tabellegenskaper som radhøyde og cellebredde. Det ligner på et databasesjekkpunkt.
- XML-sjekkpunkt: Verifiserer XML-data, XML-skjema og XML-ressurser som er innebygd i en nettside eller i et frittstående .xml-dokument.
Tabellen nedenfor sammenligner de ti kontrollpunkttypene side om side, slik at du kan velge den riktige før du starter opptaket.
| Kontrollpunkttype | Verifiserer | Best brukt til |
|---|---|---|
| standard | Verdier for objektegenskaper | Generell validering på ethvert tilleggsobjekt |
| Side | Lenker, bilder, lastetid | Bekrefter at en nettside er fullstendig lastet inn |
| tekst | Tilstedeværelse av spesifikk tekst | Bekreftelse av at en melding eller etikett vises |
| Tekstområde | Tekst innenfor et skjermområde | Windows applikasjoner med ikke-standard tekstkontroller |
| Bitmap | Bildesamsvar på pikselnivå | Visuell regresjon av diagrammer, logoer og oppsett |
| Bilde | Egenskaper for bildekilde | Bekrefter at riktig bildefil leveres |
| tilgjengelighet | W3C-samsvar | Revisjon av nettsider for tilgjengelighetshull |
| Database | Verdier for spørringsresultat | Bekrefter at backend-data samsvarer med brukergrensesnittet |
| Bord | Innhold og oppsett i rutenettceller | Rapporter, søkeresultater og datanett |
| XML | XML-data og -skjema | Webtjenester og XML-drevne sider |
Sjekkpunkt vs. utgangsverdi: Hva er forskjellen?
Testere som er nye til UFT/QTP forveksler ofte kontrollpunkter med utdataverdier, fordi begge settes inn fra samme meny og begge leser en live-egenskap fra et objekt. De to funksjonene tjener motsatte formål.
| Aspekt | Checkpoint | Utgangsverdi |
|---|---|---|
| Formål | Bekrefter at en registrert egenskap samsvarer med en forventet verdi | Registrerer en kjøretidsegenskap slik at et senere trinn kan bruke den på nytt |
| Innvirkning på bestått/ikke bestått | Mislykkes med trinnet og rapporterer et avvik i resultatene | Stryker aldri på testen på egenhånd |
| Hvor verdien går | Sammenlignet internt, vist som BESTÅTT/IKKE BESTÅTT i testresultater | Lagret i kjøretidsdatatabellen eller en variabel |
| Typisk bruk | Bekreft en sidetittel eller en databasesum | Overfør et generert ordrenummer til neste handling |
Bruk et kontrollpunkt når skriptet trenger bevis for bestått/ikke bestått, og en utdataverdi når et senere trinn trenger de innsamlede dataene som input.
Slik setter du inn et kontrollpunkt UFT/QTP
De fleste kontrollpunkttyper kan bare settes inn mens UFT spiller inn; når opptaket stopper, blir kontrollpunktmenyen utilgjengelig for nye innsettinger. Trinnene nedenfor setter inn et standard kontrollpunkt, den typen som brukes oftest.
Klikk her. hvis videoen ikke er tilgjengelig
- Åpne applikasjonen som testes og starte opptaket in UFT.
- Naviger til skjermen eller objektet du vil bekrefte, og høyreklikk deretter på trinnet rett etter som kontrollpunktet hører hjemme.
- Fra hurtigmenyen velger du Sett inn standard kontrollpunkt, eller velger en bestemt type – punktgrafikk, database, tabell og så videre – fra undermenyen Kontrollpunkt.
- I dialogboksen Egenskaper for kontrollpunkt beholder du standardnavnet for kontrollpunkt eller erstatter det med et beskrivende navn.
- Velg objektegenskapene som skal bekreftes. Hver valgte egenskap er merket med en hake; ABC-ikonet markerer en konstant verdi, og ikonet endres hvis egenskapen er parameterisert.
- Klikk på OK. UFT setter inn en sjekksetning umiddelbart etter gjeldende trinn.
- Stopp opptaket og spill av testen på nytt for å bekrefte at kontrollpunktet rapporterer BESTÅTT.
⚠ Vanlig feil: Hvis trinnet rett før kontrollpunktet lukker eller erstatter vinduet det er rettet mot, UFT kaster en kjøretidsfeil fordi objektet ikke lenger eksisterer når kontrollpunktet prøver å lese det. HP QTP, er det vanligvis nok å endre rekkefølgen på de berørte trinnene slik at målobjektet fortsatt er åpent når kontrollpunktet kjøres for å fikse det.
VBScript-utdraget nedenfor viser den samme ideen uttrykt gjennom UFT automatiseringsobjektmodell: en Check-setning som returnerer en boolsk verdi, som skriptet deretter rapporterer gjennom Reporter-objektet.
Dim Result ' Holds the PASS/FAIL outcome of the checkpoint Browser("Flight Reservation").Page("Flight Reservation").WinEdit("Agent Name:").Set "Diana" Browser("Flight Reservation").Page("Flight Reservation").WinButton("OK").Click ' Run the Standard Checkpoint that was inserted after the OK click Result = Browser("Flight Reservation").Page("Flight Reservation").Check(CheckPoint("Flight Reservation Window")) If Result Then Reporter.ReportEvent micPass, "Checkpoint Passed", "Flight Reservation window matches expected values" Else Reporter.ReportEvent micFail, "Checkpoint Failed", "Flight Reservation window does not match expected values" End If
Denne videoen demonstrerer de ulike kontrollpunkttypene som er tilgjengelige i UFT/QTP, inkludert standard-, bitmap- og databasesjekkpunkter i aksjon.
Beste praksis for effektiv bruk av kontrollpunkter
Et kontrollpunkt er bare så pålitelig som objektet og egenskapen det er rettet mot. Fremgangsmåtene nedenfor holder kontrollpunktene nøyaktige etter hvert som applikasjonen som testes endres.
- Sjekk det spesifikke objektet, ikke hele siden, for å unngå sårbare tester som mislykkes på urelaterte endringer i brukergrensesnittet.
- Hold det avmerkede objektet åpent når kontrollpunktet kjøres. Å endre rekkefølgen på et trinn er ofte løsningen på kjøretidsfeilen «objekt ikke funnet» som er beskrevet ovenfor.
- Kjøp helst Database eller XML-sjekkpunkter over Bitmap-sjekkpunkter for datavalidering – bitmap-sammenligninger brytes ved endringer i skrifttype, oppløsning eller tema som ikke har noe med dataene å gjøre.
- Parameteriser kontrollpunktverdier fra en datatabell når den samme sjekken må kjøres på tvers av flere testiterasjoner.
- Gi hvert kontrollpunkt et beskrivende navn, slik at en feil er enkel å finne i testresultatvinduet.
- Koble kontrollpunkter med synkronisering, for eksempel en Wait-setning eller Sync metode, slik at en sjekk aldri kjøres før siden er ferdig lastet inn.
