Antes de usarlo lo de compile para ver que no hiciera nada raro.
Le ayudo con 2 cositas, en la línea 1307 esta suponiendo que el split de la variable $linea resultante de correr test.exe, le arroja 3 tokens. Ahora cuando test falla y no entrega el String esperado, obviamente al referenciar el array resultante del split en una posición mayor a 1, les sale el error de indexoutofbounds. Más fácil imprima $linea y explica abajo que significa cada token separado por : , así por lo menos no le sale error en tiempo de ejecución y puede saber que le está devolviendo la ejecución de test.exe
Suerte,
Le ayudo con 2 cositas, en la línea 1307 esta suponiendo que el split de la variable $linea resultante de correr test.exe, le arroja 3 tokens. Ahora cuando test falla y no entrega el String esperado, obviamente al referenciar el array resultante del split en una posición mayor a 1, les sale el error de indexoutofbounds. Más fácil imprima $linea y explica abajo que significa cada token separado por : , así por lo menos no le sale error en tiempo de ejecución y puede saber que le está devolviendo la ejecución de test.exe
Suerte,