@@ -11,6 +11,7 @@ module.exports = async function (workerCount, selectedRuns, options) {
11
11
const passedTestArr = [ ] ;
12
12
const failedTestArr = [ ] ;
13
13
const skippedTestArr = [ ] ;
14
+ const stepArr = [ ] ;
14
15
15
16
const { config : testConfig , override = '' } = options ;
16
17
const overrideConfigs = tryOrDefault ( ( ) => JSON . parse ( override ) , { } ) ;
@@ -36,6 +37,14 @@ module.exports = async function (workerCount, selectedRuns, options) {
36
37
suiteArr . push ( suite ) ;
37
38
} ) ;
38
39
40
+ workers . on ( event . step . passed , ( step ) => {
41
+ stepArr . push ( step ) ;
42
+ } ) ;
43
+
44
+ workers . on ( event . step . failed , ( step ) => {
45
+ stepArr . push ( step ) ;
46
+ } ) ;
47
+
39
48
workers . on ( event . test . failed , ( test ) => {
40
49
failedTestArr . push ( test ) ;
41
50
output . test . failed ( test ) ;
@@ -53,6 +62,28 @@ module.exports = async function (workerCount, selectedRuns, options) {
53
62
54
63
workers . on ( event . all . result , ( ) => {
55
64
// expose test stats after all workers finished their execution
65
+ function addStepsToTest ( test , stepArr ) {
66
+ stepArr . test . steps . forEach ( step => {
67
+ if ( test . steps . length === 0 ) {
68
+ test . steps . push ( step ) ;
69
+ }
70
+ } ) ;
71
+ }
72
+
73
+ stepArr . forEach ( step => {
74
+ passedTestArr . forEach ( test => {
75
+ if ( step . test . title === test . title ) {
76
+ addStepsToTest ( test , step ) ;
77
+ }
78
+ } ) ;
79
+
80
+ failedTestArr . forEach ( test => {
81
+ if ( step . test . title === test . title ) {
82
+ addStepsToTest ( test , step ) ;
83
+ }
84
+ } ) ;
85
+ } ) ;
86
+
56
87
event . dispatcher . emit ( event . workers . result , {
57
88
suites : suiteArr ,
58
89
tests : {
0 commit comments