Show EOL distros:
Package Summary
A self_test is a service call provided by a node that triggers a test of the driver and any associated hardware. This service call can be used by users to quickly verify that a device or process is working. Currently self-tests are mainly used with drivers, but nothing precludes non-driver nodes using them.
The self_test package contains tools to for calling the self-test service from the command-line, or from a regression test. It also provides a C++ API for facilitating writing of self-tests.
- Author: Jeremy Leibs and Blaise Gassend
- License: BSD
- Repository: ros-pkg
- Source: svn https://code.ros.org/svn/ros-pkg/stacks/diagnostics/tags/diagnostics-1.4.0
Package Summary
A self_test is a service call provided by a node that triggers a test of the driver and any associated hardware. This service call can be used by users to quickly verify that a device or process is working. Currently self-tests are mainly used with drivers, but nothing precludes non-driver nodes using them.
The self_test package contains tools to for calling the self-test service from the command-line, or from a regression test. It also provides a C++ API for facilitating writing of self-tests.
- Author: Jeremy Leibs and Blaise Gassend
- License: BSD
- Source: svn https://code.ros.org/svn/ros-pkg/stacks/diagnostics/trunk
Package Summary
A self_test is a service call provided by a node that triggers a test of the driver and any associated hardware. This service call can be used by users to quickly verify that a device or process is working. Currently self-tests are mainly used with drivers, but nothing precludes non-driver nodes using them.
The self_test package contains tools to for calling the self-test service from the command-line, or from a regression test. It also provides a C++ API for facilitating writing of self-tests.
- Author: Jeremy Leibs and Blaise Gassend
- License: BSD
- Source: git https://github.com/ros/diagnostics.git (branch: diagnostics-1.7.0)
Package Summary
self_test
- Maintainer status: maintained
- Maintainer: Brice Rebsamen <brice.rebsamen AT gmail DOT com>
- Author: Kevin Watts, Brice Rebsamen <brice.rebsamen AT gmail DOT com>, Jeremy Leibs and Blaise Gassend
- License: BSD
- Source: git https://github.com/ros/diagnostics.git (branch: groovy-devel)
Package Summary
self_test
- Maintainer status: maintained
- Maintainer: Brice Rebsamen <brice.rebsamen AT gmail DOT com>
- Author: Kevin Watts, Brice Rebsamen <brice.rebsamen AT gmail DOT com>, Jeremy Leibs and Blaise Gassend
- License: BSD
- Source: git https://github.com/ros/diagnostics.git (branch: groovy-devel)
Package Summary
self_test
- Maintainer status: maintained
- Maintainer: Brice Rebsamen <brice.rebsamen AT gmail DOT com>, Austin Hendrix <namniart AT gmail DOT com>
- Author: Kevin Watts, Brice Rebsamen <brice.rebsamen AT gmail DOT com>, Jeremy Leibs and Blaise Gassend
- License: BSD
- Source: git https://github.com/ros/diagnostics.git (branch: indigo-devel)
Package Summary
self_test
- Maintainer status: maintained
- Maintainer: Brice Rebsamen <brice.rebsamen AT gmail DOT com>, Austin Hendrix <namniart AT gmail DOT com>
- Author: Kevin Watts, Brice Rebsamen <brice.rebsamen AT gmail DOT com>, Jeremy Leibs and Blaise Gassend
- License: BSD
- Source: git https://github.com/ros/diagnostics.git (branch: indigo-devel)
Package Summary
self_test
- Maintainer status: maintained
- Maintainer: Guglielmo Gemignani <guglielmo.gemignani AT gmail DOT com>, Austin Hendrix <namniart AT gmail DOT com>
- Author: Kevin Watts, Brice Rebsamen <brice.rebsamen AT gmail DOT com>, Jeremy Leibs and Blaise Gassend
- License: BSD
- Source: git https://github.com/ros/diagnostics.git (branch: indigo-devel)
Package Summary
self_test
- Maintainer status: maintained
- Maintainer: Brice Rebsamen <brice.rebsamen AT gmail DOT com>, Austin Hendrix <namniart AT gmail DOT com>
- Author: Kevin Watts, Brice Rebsamen <brice.rebsamen AT gmail DOT com>, Jeremy Leibs and Blaise Gassend
- License: BSD
- Source: git https://github.com/ros/diagnostics.git (branch: indigo-devel)
Package Summary
self_test
- Maintainer status: maintained
- Maintainer: Guglielmo Gemignani <guglielmo.gemignani AT gmail DOT com>, Austin Hendrix <namniart AT gmail DOT com>
- Author: Kevin Watts, Brice Rebsamen <brice.rebsamen AT gmail DOT com>, Jeremy Leibs and Blaise Gassend
- License: BSD
- Source: git https://github.com/ros/diagnostics.git (branch: indigo-devel)
Package Summary
self_test
- Maintainer status: maintained
- Maintainer: Guglielmo Gemignani <guglielmo.gemignani AT gmail DOT com>, Austin Hendrix <namniart AT gmail DOT com>
- Author: Kevin Watts, Brice Rebsamen <brice.rebsamen AT gmail DOT com>, Jeremy Leibs and Blaise Gassend
- License: BSD
- Source: git https://github.com/ros/diagnostics.git (branch: noetic-devel)
Running a Self-Test
You can get a list of the available subtests with the rosservice command:
$ rosservice list | grep "/self_test$" /hokuyo_node/self_test
You can then run the self test using rosservice:
$ rosservice call /hokuyo_node/self_test
You can get different output with the deprecated run_selftest node:
$ rosrun self_test run_selftest /hokuyo_node/self_test
C++ API
The self_test::TestRunner class will advertise a service "~self_test". When called, it will perform a check on the node's connection status, and any other checks a developer wants to perform on a node or device.
An example use of the self_test package's API can be found in self_test/src/selftest_example.cpp.
Stability and Status
The documented C++ and ROS API should be considered stable.
self_test::TestRunner
self_test contains the self_test::TestRunner class that can be used to sequence a set of tests to be run in order to test a device. It advertises a self_test service. When the service is called, the self_test::TestRunner calls the tests that have been defined in order, and combines the results into a diagnostic_msgs/DiagnosticStatus array (see the service definition diagnostic_msgs/SelfTest). A detailed example can be found in self_test/src/selftest_example.cpp.
Nodes
selftest_rostest
A rostest that runs a self-test and reports success if the self-test passed.Parameters
~node_to_test (string, default: "")- Name of the node to run the self-test on.
- Maximum amount of time to wait for the self_test service to show up.