Debugging and Testing (Debug)
e Builder (Debug) (intra-mart e Builder for Accel Platform (Debug)) is an extension for debugging and testing server-side scripts (jssp) from the VSCode UI.
What It Can Do
| Feature | What it does | Details |
|---|---|---|
| Debugging | Pause a server-side script (jssp) running on the server at a specified line and step through it one line at a time while inspecting variable values | Debugging Scripts |
| Running tests | Run test code for server-side scripts (jssp) from a list view and check the results and coverage | Running Tests and Coverage |
The two features are independent. Debugging targets scripts running on the server and requires server-side setup. Running tests is self-contained on your PC and does not use a server.
Prerequisites
Requirements common to all extensions are summarized in Overview - Prerequisites. e Builder (Debug) additionally requires the following. Debugging and running tests have different requirements.
| Prerequisite | Details | Feature that needs it |
|---|---|---|
| iAP 2025 Spring or later | The debugging feature targets this version of iAP and later | Debugging |
| The debugger module | A module that lets the server accept connections from VSCode. For 2026 Autumn or later, it is added as the "Module Development Support Library" in IM-Juggling; for 2026 Spring or earlier, it is installed as a user module (im_eb_js_debugger.imm). It is built in by default in Docker environments | Debugging |
| Starting in debug mode | A setting that starts the server in a mode VSCode can connect to (DAP mode). You cannot connect to a server without this setting | Debugging |
| Java (JDK) | Tests run on your PC using the same JavaScript engine as server-side scripts. Java is required to run that engine | Running tests |
| A Jest configuration file | Building the test list requires a configuration file such as jest.config.js in the project root | Running tests |
Java (JDK) is a tool installed when you set up your local development environment. If you have already installed it, no additional work is needed. For the installation steps, see Prerequisites and Required Tools.
If you use debugging, first complete the Server-Side Setup. If you only use testing, no server-side setup is needed. For how to create the configuration file, see Running Tests and Coverage.
The extension runs test code and configuration files, so it is disabled in an untrusted folder. For details, see Trusting the Folder.
Target Projects
This extension assumes the standard project structure created by e Builder (Core) or Accel CLI. It refers to the following four things in a project.
<project root>/
├── pom.xml <- Used as the marker for a project
├── jest.config.js <- Required if you use the test feature
└── src/
├── main/jssp/... <- Scripts that run on the server
└── test/jssp/... <- Test code
| Feature | Where it looks |
|---|---|
| Activating the extension | src/main/jssp or src/test/jssp must exist |
| Building the test list | A folder that has both pom.xml and src/test/jssp |
This extension does not work in a folder that has neither src/main/jssp nor src/test/jssp. Also, when one workspace contains multiple projects, a test list is built for each project.
For how to create a project, see Creating and Managing Projects if you create it from the VSCode UI, or Creating a New Project if you create it from Accel CLI.
The tree above shows only the parts the extension refers to. For the full set of directories a project has, see Project Resource Layout.
The standard structure also includes src/sample/jssp, but it is outside the scope of the extension. Only src/main/jssp and src/test/jssp are targets for debugging and testing.
While the server setting for the debugging feature is enabled, you cannot debug server-side scripts with the Eclipse-based e Builder (IDE). For how to switch, see Debugging with e Builder (IDE).
Step-by-Step Pages
- Server-Side Setup — The server-side settings for using the debugging feature (only if you debug)
- Debugging Scripts — Connect to the server and pause execution at a breakpoint
- Running Tests and Coverage — Run tests and check coverage