Test suite: canonicalize binary path before execution

`runProcess` behavior a non-`Nothing` cwd with relative binary path is inconsistent, hence use `canonicalizePath` to ensure correct operation, as done in 48082b90726093298df8559b365ed08805ca6d8f (see also discussion in issue).

Possible improvement: create a wrapper for `runProcess` which uses `canonicalizePath`.

Fix #1458.