Fouten in programma's opsporen

In deze sectie leert u fouten in een Java-programma op te sporen.

  1. Dubbelklik in het Java-perspectief van de Pakketverkenner op junit.samples.VectorTest.java om dit item te openen in een editor.
  2. Plaats de cursor op de verticale lineaal aan de linkerkant van het editorgebied op de volgende regel in de methode setUp():

    fFull.addElement (new Integer(1));.

    Dubbelklik op de lineaal om een onderbrekingspunt in te stellen.

    VectorTest.java editor met toegevoegd onderbrekingspunt

    Het pictogram van het onderbrekingspunt geeft de status ervan aan. Een normaal blauw pictogram geeft aan dat het onderbrekingspunt is ingesteld, maar nog niet geïnstalleerd is.  

    Opmerking: als de klasse eenmaal door de Java-VM is geladen, wordt het onderbrekingspunt geïnstalleerd en wordt het pictogram van het onderbrekingspunt afgebeeld met een vinkje.

  3. Selecteer in de view Pakketverkenner het pakket junit.samples en kies vervolgens 'Fouten opsporen als' en 'Java-toepassing'. Wanneer u een programma vanuit een pakket uitvoert, wordt u gevraagd om een type te kiezen uit alle klassen in het pakket met de methode mainmethod. 
  4. Selecteer het item VectorTest in het dialoogvenster, en klik vervolgens op OK.

    Dialoogvenster voor typeselectie

  5. Het programma wordt uitgevoerd totdat het onderbrekingspunt is bereikt. Vervolgens wordt de verwerking onderbroken en wordt u gevraagd of u het perspectief Fouten opsporen wilt openen. Klik op Ja. Het proces is echter nog steeds actief (niet beëindigd) in de view Fouten opsporen. Andere threads kunnen intussen gewoon worden uitgevoerd.

    Perspectief Fouten opsporen

    Opmerking: het onderbrekingspunt wordt nu afgebeeld met een vinkje omdat de klasse VectorTest in de Java-VM geladen is.
  6. Selecteer new Vector() vanaf de regel boven het ingestelde onderbrekingspunt in het perspectief Fouten opsporen van de editor, en selecteer vervolgens Inspect in het voorgrondmenu.

    VectorTest.java editor met voorgrondmenu van regel met geselecteerde onderbrekingspunt

  7. De expressie wordt geëvalueerd in de context van het huidige stackframe, en er verschijnt een voorgrondvenster met de resultaten. U kunt een resultaat naar de view Expressies overbrengen door op de toetsenkoppeling te drukken die in dit venster wordt weergegeven.
  8. Expressies die u evalueert tijdens het opsporen van fouten in een programma, worden in deze view weergegeven. Als u een expressie wilt verwijderen nadat u ermee hebt gewerkt, selecteert u de expressie en kiest u Verwijderen in het voorgrondmenu.
  9. In de view Variabelen (beschikbaar op een tabblad naast de view Expressies) worden de waarden van de variabelen in het geselecteerde stackframe weergegeven. Vouw de structuur this.fFull in de view Variabelen uit totdat u elementCount ziet.
  10. De variabelen (zoals elementCount) in de view Variabelen veranderen wanneer u VectorTest doorloopt in de view Fouten opsporen. Om de code te doorlopen, klikt u op Stap over (Stap over).  De verwerking wordt voortgezet op de volgende regel in dezelfde methode of, als het einde van de methode is bereikt, in de methode waarvandaan de huidige methode is aangeroepen.

    View Variabelen

  11. Experimenteer ook eens met de andere stapknoppen (zoals Stap in Stap in en Stap uit Stap uit) om de code te doorlopen. Let op de verschillen in staptechnieken.
  12. U kunt een foutopsporingssessie beëindigen door het programma tot het einde toe uit te voeren (te voltooien) of door het programma te beëindigen.

Verwante concepten
Onderbrekingspunten
Fouten opsporen op afstand
Lokaal fouten opsporen

Verwante taken
Onderbrekingspunten toevoegen
De verwerking van onderbroken threads hervatten
Uitvoeren en fouten opsporen
Threads onderbreken

Verwante onderwerpen
Voorkeuren voor foutopsporing
De view Fouten opsporen
Menu-acties uitvoeren
Werkbalkacties uitvoeren en fouten in werkbalkacties opsporen
View Onderbrekingspunten
De view Console
View Weergave
View Expressies
View Variabelen