Revised tutorial on automatic testing of ROS code, packages and applications

+1 for improving testing documentation. I like your rewrite of UnitTesting. I think it correctly identifies that both gtest and rostest are needed for UnitTesting, whereas the original pages on gtest and rostest implied that gtest was for unit testing and rostest for subsystem testing. In practice, even if you’re unit testing a single module, you’re likely to need e.g. rosparams at a minimum, and maybe ros messages from a test harness, and you don’t get any of that with gtest because it doesn’t start roscore. Yet rostest has difficulties that I haven’t (yet) found a solution to: how to run individual unit tests, how to look at ROS_INFO etc prints while subtests run. I look forward to improvements to rostest, and will contribute as I’m able.

Paul