microsoft / microsoft/vscode-java-debug

Breakpoints not set when using org.mockito:mockito-inline

Open
#955 6 comments 0 reactions 1 assignee View on GitHub

@testforstephen is already working on this.

Since Mar 8, 2021.

ai-triaged bug variables
Dominant language
TypeScript
Stars
591
Forks
429
Avg merge
1d 9h
Merged PRs (30d)
19

Description

When using org.mockito:mockito-inline in unit tests, trying to debug the tests is harder because upon starting the debug breakpoint will have to be created after all mocks/spies are created.
In addition all live context becomes invisible.

Environment
  • Operating System: MacOS
  • JDK version: openjdk version "11.0.7" 2020-04-14 OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.7+10) OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.7+10, mixed mode)
  • Visual Studio Code version: 1.53.2 622cb03f7e070a9670c94bae1a45d78d7181fbd4 x64
  • Java extension version: v0.12.1
  • Java Debugger extension version: v0.31.0
Steps To Reproduce
  1. run git clone https://github.com/sfrank-mc/vscode-java-debug-bug (or go through the code and replicate locally)
  2. open the workspace inside the vscode-java-debug-bug with vscode
  3. open file at src/main/java/vscode/java/debug/bug/App.java and place a breakpoint at line 8
  4. open file at src/test/java/vscode/java/debug/bug/AppTest.java and debug the test called testAppHasAGreeting
  5. notice test will pass without breakpoint being hit.

Workaround and second issue:

  1. open file at src/test/java/vscode/java/debug/bug/AppTest.java and set a breakpoint at line 15
  2. debug the test called testAppHasAGreeting
  3. breakpoint at line 15 is hit. don't continue.
  4. open file at src/main/java/vscode/java/debug/bug/App.java
  5. remove the breakpoint at line 8
  6. re-create the breakpoint at line 8
  7. continue running the debug session (F5)
  8. notice breakpoint is hit.
  9. notice there is no live context info:
Screenshot 2021-03-04 at 09 56 03

Control check:

  1. open file at build.gradle
  2. comment line 30
  3. uncomment line 31
  4. perform steps 3 and 4.
  5. notice breakpoint is hit.
Current Result

Debug breakpoints broken in every run
No debug info even if breakpoint is re-created

Expected Result

Debug breakpoints should be maintained between runs
Debug info should be available

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.