diff --git a/tests/pkg_micro-ecc/Makefile b/tests/pkg_micro-ecc/Makefile
index c2cfe59cbf4ae7e1a05cbd07be965e8cebd642bd..1a71f4797e9c4a9335a5b2fd6c0ca4b5259615c4 100644
--- a/tests/pkg_micro-ecc/Makefile
+++ b/tests/pkg_micro-ecc/Makefile
@@ -5,3 +5,6 @@ USEMODULE += hashes
 USEPKG += micro-ecc
 
 include $(RIOTBASE)/Makefile.include
+
+test:
+	tests/01-run.py
diff --git a/tests/pkg_micro-ecc/main.c b/tests/pkg_micro-ecc/main.c
index 2e60fe6251776ac4ff1360b4e2de503f946c2fe2..0e41a82e68c5d047203f2bdedc34572c12f1b4eb 100644
--- a/tests/pkg_micro-ecc/main.c
+++ b/tests/pkg_micro-ecc/main.c
@@ -164,10 +164,12 @@ int main(void)
 
     printf(" done with %d error(s)\n", errorc);
 
-    if (errorc == 0) {
-        return 0;
+    if (errorc) {
+        puts("FAILURE");
+        return 1;
     }
     else {
-        return 1;
+        puts("SUCCESS");
+        return 0;
     }
 }
diff --git a/tests/pkg_micro-ecc/tests/01-run.py b/tests/pkg_micro-ecc/tests/01-run.py
new file mode 100755
index 0000000000000000000000000000000000000000..d3bf065fa2a6e09b7564b42851279cb3f83a8523
--- /dev/null
+++ b/tests/pkg_micro-ecc/tests/01-run.py
@@ -0,0 +1,19 @@
+#!/usr/bin/env python3
+
+import os
+import sys
+import math
+
+sys.path.append(os.path.join(os.environ['RIOTBASE'], 'dist/tools/testrunner'))
+import testrunner
+
+
+def testfunc(child):
+    child.expect_exact('micro-ecc compiled!')
+    child.expect_exact('Testing 16 random private key pairs and signature '
+                       'without using HWRNG')
+    child.expect_exact('................ done with 0 error(s)')
+    child.expect_exact('SUCCESS')
+
+if __name__ == "__main__":
+    sys.exit(testrunner.run(testfunc, timeout=60))