diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 7e7082bea28cdf1f70e7264dbee11f371cd3c204..ed0077b62ea6c680cdc8a5103af9bde82ec873c5 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -27,6 +27,7 @@ linting:
   stage: test
   script:
   - flake8 --ignore=F403,F405,F821,F841,W504 mseedpeek
+  - flake8 tests
 
 python3.6:
   image: python:3.6
diff --git a/tests/test_mseedpeek.py b/tests/test_mseedpeek.py
index df486fd21f33e3a2488d570d97a11a918214c3d9..5d25a98451c29d009c6455bbbf44bf5128a29325 100644
--- a/tests/test_mseedpeek.py
+++ b/tests/test_mseedpeek.py
@@ -4,21 +4,18 @@
 """Tests for `mseedpeek` package."""
 
 import unittest
-import sys
 
-try:
-    import mseedpeek
-except ImportError:
-     pass
+from unittest.mock import patch
+from mseedpeek.mseedpeek import main
+
 
 class TestMseedpeek(unittest.TestCase):
     """Tests for `mseedpeek` package."""
 
-    def setUp(self):
-        """Set up test fixtures, if any."""
-
-    def tearDown(self):
-        """Tear down test fixtures, if any."""
-
     def test_import(self):
-        self.assertTrue('mseedpeek' in sys.modules, "Mseedpeek import failed!")
+        """Test mseedpeek import"""
+        with patch('sys.argv', ['mseedpeek', '-#']):
+            with self.assertRaises(SystemExit) as cmd:
+                main()
+            self.assertEqual(cmd.exception.code, 0, "sys.exit(0) never called "
+                             "- Failed to exercise mseedpeek")
diff --git a/tox.ini b/tox.ini
index 86082c8d69669cefe7b963758654dd27a25d4971..980627c0ba67fdff6b08d6ae44a4e2cf543ebe09 100644
--- a/tox.ini
+++ b/tox.ini
@@ -5,6 +5,7 @@ envlist = py36, py37, py38, flake8
 basepython = python
 deps = flake8
 commands = flake8 --ignore=F403,F405,F821,F841,W504 mseedpeek
+           flake8 tests
 
 [testenv]
 commands = python -m unittest