Software Testing for Scientists