diff --git a/src/rosjava_actionlib/launch/test.launch b/src/rosjava_actionlib/launch/test.launch
new file mode 100644
index 0000000000000000000000000000000000000000..909715b71be0405eb87b473f9837ef15cf9f7685
--- /dev/null
+++ b/src/rosjava_actionlib/launch/test.launch
@@ -0,0 +1,4 @@
+<launch>
+<node pkg="actionlib_tutorials" type="fibonacci_server" name="fibonacci_server"/>
+<test pkg="rosjava_actionlib" type="execute" test-name="rosjava_actionlib" args="com.github.ekumen.rosjava_actionlib.TestClient"/>
+</launch>
diff --git a/src/rosjava_actionlib/rosjava_actionlib/build.gradle b/src/rosjava_actionlib/rosjava_actionlib/build.gradle
index 89829f89c0419a500f24f5770f60afe1125eda7d..5fbba5269834d55988109f5bf781dcf5753da57e 100644
--- a/src/rosjava_actionlib/rosjava_actionlib/build.gradle
+++ b/src/rosjava_actionlib/rosjava_actionlib/build.gradle
@@ -37,3 +37,15 @@ dependencies {
 
    compile 'org.ros.rosjava_messages:actionlib_tutorials:[0.1,)'
 }
+
+task deployApp(dependsOn: 'installApp') << {
+  File binDir = new File(project.projectDir, '/bin')
+  if (! binDir.isDirectory()) {
+    println "Creating $binDir directory"
+    binDir.mkdirs()
+  }
+  File link = new File(binDir,"execute")
+  File target = new File(project.projectDir, "build/install/$project.name/bin/$project.name")
+  println "Creating symlink from $link.absolutePath to $target.absolutePath"
+  ant.symlink(link: link.absolutePath, resource: target.absolutePath)
+}