Stepping through an application

When you have stopped execution at a breakpoint, you can use several commands to step through your application code and use the views to examine the effect of each statement. As you step through the code, the debugger views change to reflect the current context of your application and a yellow arrow cursor indicates the next statement to be executed.

NoteUpdating the Source view When the context of your application changes to another script, the Source view is updated with the new context. If you have multiple Source views open, only the first one opened is updated.

Single-stepping through an application

You can use either Step In or Step Over to step through an application one statement at a time. They have the same result except when the next statement contains a call to a function. Use Step In if you want to step into a function and examine the effects of each statement in the function. Use Step Over to execute the function as a single statement.

StepsTo step through an application entering functions:

  1. Click the Step In button in the PainterBar, or select Debug>Step In from the menu bar

StepsTo step through an application without entering functions:

  1. Click the Step Over button in the PainterBar, or select Debug>Step Over from the menu bar

Stepping out of a function

If you step into a function where you do not need to step into each statement, use Step Out to continue execution until the function returns.

StepsTo step out of a function:

  1. Click the Step Out button in the PainterBar, or select Debug>Step Out from the menu bar

Stepping through multiple statements

As you step through an application, you might reach sections of code that you are not interested in examining closely. The code might contain a large loop, or it might be well-tested code that you are confident is free of errors. You can use Run To Cursor to select a statement further down in a script or in a subsequent script where you want execution to stop.

StepsTo step through multiple statements:

  1. Click on the line in the script where you want to resume single stepping.

  2. Click the Run To Cursor button in the PainterBar, or select Debug>Run To Cursor from the menu bar.

    PocketBuilder executes all intermediate statements and the yellow arrow cursor displays at the line where you set the cursor.

Bypassing statements

You can use Set Next Statement to bypass a section of code that contains a bug, or to test part of an application using specific values for variables. Execution continues from the statement where you place the cursor. Be cautious when you use Set Next Statement, because results might be unpredictable if, for example, you skip code that initializes a variable.

StepsTo set the next statement to be executed:

  1. Click on the line in the script where you want to continue execution.

  2. Click the Set Next Statement button in the PainterBar, or select Debug>Set Next Statement from the menu bar.

  3. If necessary, change the values of variables.

  4. Continue execution using Continue, Step In, or Step Over.

    If you select Continue, PocketBuilder begins execution at the statement you specified and continues to the next breakpoint. If you select Step In or Step Over, PocketBuilder sets the next statement and displays the yellow arrow cursor at the line where you set the cursor.

Changing a variable's value

As you step through the application, you can change the values of variables that are in scope. You might want to do this to examine different flows through the application, to simulate a condition that is difficult to reach in normal testing, or if you are skipping code that sets a variable's value.

NoteLimitations You cannot change the values of enumerated variables.

StepsTo change the value of a variable:

  1. Select the variable in the Variables view or the Watch view.

  2. From the pop-up menu, select Edit Variable.

  3. Type a value for the variable or select the Null check box and click OK.

    The value you enter must conform to the type of the variable. If the variable is a string, do not enclose the string in quotes. When you continue execution, the new value is used.

Fixing your code

If you find an error in a script or function during a debugging session, you must close the debugger before you fix it. After you have fixed the problem, you can reopen the debugger and run the application again in debug mode. The breakpoints and watchpoints set in your last session are still defined.