Git Product home page Git Product logo

atf's Introduction

The Automated Test Framework (ATF)

CI-Status master: Build Status

CI-Status atf_test_apps/master: Build Status

The ATF is a testing framework written for ROS which supports executing integration and system tests, running benchmarks and monitor the code behaviour over time. The ATF provides basic building blocks for easy integration of the tests into your application. Furthermore the ATF provides everything to automate the execution and analysis of tests as well as a graphical web-based frontend to visualize the results.

Auto-generated TOC with https://imthenachoman.github.io/nGitHubTOC/.

Architecture

Overview

There is a presentation for a brief ATF introduction.

Recording data

Analysing metrics

Visualising results

Implemented metrics

The following metrics have been implemented so far:

Metric Description Unit Mode (span, snap)
time The time metric measures the elapsed time. [sec] span
publish_rate The publish_rate metric measures the publising rate of a topic [1/sec] span
interface The interface metric checks if an interfaces (nodes, publishers, subscribers, service servers, action servers) matches its specification. [bool] snap
tf_distance_translation The tf_distance_translation metric measures the cartesian distance of a TF frame with respect to another frame at the end of a testblock. [m] snap
tf_distance_rotation The tf_distance_rotation metric measures the cartesian angular distance of a TF frame with respect to another frame at the end of a testblock. [m] snap
tf_length_translation The tf_length_translation metric measures the cartesian path (distance integrated over time) of a TF frame with respect to another frame. [m] span
tf_length_rotation The tf_length_rotation metric measures the cartesian angular path (angular distance integrated over time) of a TF frame with respect to another frame. [m] span

| user_result | The result for the user_result metric can be set from the user within the application.py. | [any] | span, snap |

Further metrics (in development):

Metric Description Unit Mode (span, snap)
resources The resources metric measures the resource consumption of a node on the operating system level (CPU, RAM, IO). [%], [MB], [MB/sec] snap
path_velocity The path_velocity metric measures the cartesian velocity (distance differntiated over time) of a TF frame with respect to another frame. [m/sec] span
distance The distance metric measures the cartesian distance between two TF frames. [m] snap
obstacle_distance The obstacle_distance metric measures the distance between two meshes [m] snap
message_match The message_match metric checks if a message content matches its desired content. [bool] snap

Installation

For installation instruction see ATF Installation.

Using the ATF (by examples)

For examples how to use the ATF see ATF Examples

Contributing to the ATF

For examples how to extend the ATF with your own contribution see ATF Contribution

Acknowledgements

The work leading to these results has received funding from the European Community's Seventh Framework Program (FP7/2007-2013) under grant agreement no 609206 Factory-in-a-Day and the German Federal Ministry for Economic Affairs and Energy under grant agreement no 01MA13001A ReApp.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.