Debug Test Plan
Virtual Machines& Platforms
VMs
Sun
- 1.3.1_01
or higher
- 1.4.1
B10 or higher
IBM
- 1.3.0
(build 1.3.0, J2RE 1.3.0 IBM build cn130-20010925)
- 1.3.1
(build 1.3.1, J2RE 1.3.1 IBM Windows 32 build cn131-20020403)
J9
Platforms
- Windows
2000/NT
- Windows
XP
- Linux
- Double
byte (Japanese)
Function
Breakpoints {Joe S}
(Breakpoint tests are a good candidate for automation)
|
Enable
|
Disable
|
Hit count
|
Condition
|
Suspend VM
|
Suspend thread
|
Caught
|
Uncaught
|
Entry
|
Exit
|
Access
|
Modification
|
Thread filter
|
Scope
|
Line Breakpoint
|
X
|
X
|
X
|
X
|
X
|
X
|
|
|
|
|
|
|
X
|
|
Exception Breakpoint
|
X
|
X
|
X
|
|
X
|
X
|
X
|
X
|
|
|
|
|
X
|
X
|
Watchpoint
|
X
|
X
|
X
|
|
X
|
X
|
|
|
|
|
X
|
X
|
X
|
|
Method Breakpoint
|
X
|
X
|
X
|
|
X
|
X
|
|
|
X
|
X
|
|
|
X
|
|
- Suspend
on uncaught exceptions
- Suspend
on compilation errors
HotSwap {Jed A/Luc B}
- J9 and
Sun
- Negative
cases (i.e. handle failures)
Launch Configurations {Darin S}
- Local
& Remote Java Applications
- Creation
of default launch configurations in dialog the dialog (via new button,
based on workbench selection)
- Creation
of default launch configurations using “Debug/Run As…” actions
- Auto-creation
& launch using “Run/Debug Java Application”
- Using
non-default class path & source lookup path
- Using
non-default working directory
- Sharing
default and non-default launch configurations
- Sharing
of classpaths
- Sharing
of JREs via new “container” support
- Launching
java programs not contained in the workspace (i.e. just use as a tool to
launch external Java programs)
- Using
new “Container” support to reference JREs (instead of JRE_LIB).
- Using
JREs with > 1 jar
- Starting
a workspace after deleting/renaming all installed JREs (can we handle it
gracefully?)
- Hot
keys for re-launch
- Perspective
switching
- Favorites
- Handling
of launch configurations with missing plug-in. I.e. create a runtime
workbench configuration, and then run the workbench without PDE.
- Saving
& building before launching, based on preferences
Source Lookup {Darin S}
- Debugging
with non-workspace source
- Prompting
for source (should update associated launch configuration)
Evaluation {Darin W}
- Debugger
- Local
- Remote
- Display
view
- Variables
view – using “this” context as selected variable
- _expression_
view
- Java
editor
- Error
handling – i.e. expressions with errors
- In
compilation units (i.e .with source)
- Binaries
w/wo source
- Inner
types/anonymous types
- Array
elements
- Code
assist
- Scrapbook
- JREs
- Working
directory
- Use
code from pre-req projects
- Imports
Console {Darin W}
- Appearing
automatically based on preferences
- Reading
Input
- Coloring
and fonts
- Navigating
from stack traces and Java doc errors to associated types
- Flooding
with output
- Wrap
& non-wrap modes
Stepping {Jared B}
- Variables
appearing/disappearing
- Changing
variables (red)
- Rapid
stepping
- Rapid
stepping & showing ‘toString()’
- Hot keys
- Step
filters [Could add tests to test suite]
- Primitive
display options (preferences in java-> debug -> appearance)
- Filter
options (preferences java -> debug -> appearance)
- Suspending
a running program
- Stepping
in non-top stack frame
- Stepping
“thru” breakpoints – i.e. should hit breakpoints when stepping over code
with breakpoints
Presentation
- All
action labels in all menus
- All
tool tips in toolbars
- F1
help in all views
- Debug
Action groups (turn on/off)
- Debug keyboard navigation
Memory Leak
Use "optimize it" (or perhaps just the system process monitor) to ensure that we free allocated memory for the following tasks:
- Start/kill debug session
- Open/close snippet editor (and start an evaluation)
- Open close preference pages, views and dialogs
- Open/close perspective
- Evaluations in debugger
|