Probefragmenttyper

Hvert fragment du definerer, krever en type-spesifikasjon. Typen viser når fragmentet skal kjøres i de aktuelle metodene. En probe kan inneholde flere fragmenter, men kan ikke inneholde mer enn ett fragment av hver type.

Tabellen nedenfor viser og beskriver fragmenttypene, og viser om typen kan brukes i en metode- eller kallsted-probe. (Du ser forskjellen på metode-prober og kallsted-prober under Metode-prober versus kallsted-prober.)
Fragmenttype Metode eller kallsted Beskrivelse
entry Metode entry-fragmenter kjøres ved metodeinngang. entry-fragmenter blir ikke kjørt for metoder som ble satt inn i klassen av Probekit.
exit Metode exit-fragmenter kjøres ved avslutning av metoden: en normal avslutning, når metoden kaster et unntak, eller når et kastet unntak sprer seg fra metoden. exit-fragmenter blir ikke kjørt for metoder som ble satt inn i klassen av Probekit.
catch Metode catch-fragmenter kjøres på begynnelsen av et catch-ledd i metoden, eller på begynnelsen av et finally-ledd som kjøres som et resultat av et unntak.
staticInitializer Metode staticInitializer-fragmenter blir utført i klasseinitialisereren i hver probebehandlet klasse. Hvis klassen ikke allerede har en statisk initialiserer, blir det opprettet en. Du finner flere opplysninger i Probefragmenttypen staticInitializer.
executableUnit Metode executableUnit-fragmenter kjøres før alle utførbare kodeenheter i metoder som samsvarer med probens mål- og filterspesifikasjoner, og som det er tilgjengelig kildekode for. Hvis metoden ikke har kildelinjeinformasjon, ser den ut til å ha en enkelt utførbar enhet, med nummeret null. Du finner flere opplysninger under executableUnit-probefragmenttypen.
beforeCall Kallsted beforeCall-fragmenter kjøres i kallmetoden rett før målmetoden blir kalt. Ikke gyldig for metode-prober.
afterCall Kallsted afterCall-fragmenter kjøres i kallmetoden umiddelbart etter at målmetoden finnes; enten ved en normal avslutning, eller når det oppstår et unntak i målmetoden. Ikke gyldig for metode-prober.
Merk:

En probe kan ha flere fragmenter som gjelder for samme plassering i en metode: for eksempel et entry-fragment og den første executableUnit-plasseringen. Et annet eksempel er et catch-fragment og den tilknyttede executableUnit-plasseringen, fordi catch-ledd for unntaksbehandling alltid representerer begynnelsen på en ny utførbar enhet. I slike tilfeller vil koden til executableUnit-fragmentet kjøres etter koden til entry- eller catch-fragmentet. Det betyr blant annet at eventuelle entry-fragmenter alltid blir kjørt før andre typer fragmenter.

Du kan ikke ha en blanding av metode- og kallstedfragmenter i en enkelt probe, men du kan ha metode-prober og kallsted-prober i samme Probekit-kildefil (probe-fil).

Eksempel:

Hvis du skal oppgi en fragmenttype, velger du en Fragment-oppføring i treruten på siden Prober og velger noe fra listen Fragmenttype i redigeringsruten.

Probekit-redigeringsprogram der Fragmenttype-valget er uthevet

Det finnes mer informasjon om følgende probefragmenttyper:
Beslektet referanse
Java-kildekode for probefragment
Dataelementer for probefragmenter