1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# JavaScript Hello World Test
# Tests JavaScript debugging with js-debug (VS Code JavaScript Debugger)
name: "JavaScript Hello World Test"
description: "Verifies basic JavaScript debugging functionality with Node.js"
# Debug target configuration
target:
program: "../e2e/hello_world.js"
args:
adapter: "js-debug"
stop_on_entry: true
# Test steps
steps:
# 1. Set a breakpoint at line 5 (after x initialization)
- action: command
command: "break hello_world.js:5"
expect:
success: true
# 2. Continue to the breakpoint
- action: command
command: "continue"
# 3. Wait for stop at breakpoint
- action: await
timeout: 15
expect:
reason: "breakpoint"
file: "hello_world.js"
# 4. Check local variables (x should be initialized)
- action: inspect_locals
asserts:
- name: "x"
value_contains: "10"
# 5. Step over to initialize y
- action: command
command: "next"
# 6. Wait for step
- action: await
timeout: 10
expect:
reason: "step"
# 7. Check y is now visible
- action: inspect_locals
asserts:
- name: "x"
value_contains: "10"
- name: "y"
value_contains: "20"
# 8. Step over to initialize sum
- action: command
command: "next"
- action: await
timeout: 10
expect:
reason: "step"
# 9. Verify all variables
- action: inspect_locals
asserts:
- name: "x"
value_contains: "10"
- name: "y"
value_contains: "20"
- name: "sum"
value_contains: "30"
# 10. Check stack trace
- action: inspect_stack
asserts:
- index: 0
function: "main"
# 11. Continue to exit
- action: command
command: "continue"
# 12. Wait for program exit
- action: await
timeout: 10
expect:
reason: "terminated"