I don't think so, for instance if you intentionally change your bond.coffee to throw a new Error and run 'make test', You would expect some tests to fail. But the compile task is not a dependency for the test task and so the test would still use the older version of bond.js.

Another solution is to make this change you have suggested and either 
a) make compile a dependency for test
b) always run make compile && make test