🚨 Common Errors
Common Errors: Every error message is a clue, not a dead end — like a doctor reading symptoms instead of guessing.
Every error message is a clue, not a dead end — like a doctor reading symptoms instead of guessing. "Could not resolve variable" means "you forgot to pick an environment", "command not found" means "the tool isn't on your PATH", and "ECONNREFUSED" means "nobody picked up the phone on the other end." Learn to read the symptom and you skip straight to the cure. But if the message already names the problem, why does anyone still get stuck on these? Because a symptom and a cause are not the same thing, and the message only ever gives you the first. "ECONNREFUSED" tells you nobody answered; it does not tell you whether the service is down, whether you typed the wrong port, or whether you are pointing at a staging URL that stopped existing last month. Treat the message as the first line of the investigation, not the conclusion — otherwise you fix the symptom (bump the timeout, disable SSL verification) and hand the real cause a longer fuse. That reflex is the same one you already use in Java: a `NullPointerException` never means "add a null check", it means "why was this null?". The difference here is that an API failure has one extra suspect list — network, environment, credentials, contract — and the error message tells you which of those four to open first. For QA this matters most when a test that passed yesterday fails today with no code change in between. The temptation is to call it flaky and rerun. The message is usually already telling you it isn't: "Could not resolve variable" means the environment was not selected, and that is a real defect in your test setup, not noise to retry away.
8 Real Errors You Will Hit — and How to Fix Them
No Environment is selected in the top-right dropdown, or the selected environment does not define this variable.
The CLI was not installed globally with npm, or npm's global bin folder is missing from PATH.
The script was pasted into the wrong tab, or a very outdated CLI version is being used that predates the bru.* sandbox API.
Wrong endpoint path, the resource was never created because a prior POST step failed, or the API endpoint itself changed.
The local or staging server uses a self-signed SSL certificate.
The local API server is not running, the wrong port is configured, or it hasn't finished starting up yet.
A brace/block was left unclosed during manual editing, or leftover Git merge-conflict markers (<<<<<<<) are still in the file.
The CI log doesn't show which specific assertion failed because no --reporter-junit/html flag was used — only a terse terminal summary exists.
🎬 "Could not resolve variable": Diagnosing an Error
Could not resolve variable
Environment Dropdown
baseURL (wrong case)