Open the Apex class or trigger in the Source Code Editor.
Click in the margin to the left of the line number where you want to set the checkpoint. Up to five checkpoints can be enabled at the same time.
Results for a checkpoint will only be captured once, no matter how many times the line of code is executed. By default, the results for a checkpoint are captured immediately before the first time the line of code is executed. You can change the iteration for the capture from the Checkpoint Locations list on the Checkpoints tab. You can also overlay Apex code and SOQL statements that run when code executes at a checkpoint.
Execute the code with the Developer Console open.
View your checkpoints and results on the Checkpoints tab.
Checkpoints persist until you click Debug | Clear Checkpoint Locations.
If you set a checkpoint in a method with the @future annotation, you must keep the Developer Console open until the @future method completes asynchronously.