diff --git a/robotframework-onap/ONAPLibrary/CloudConfigSOKeywords.py b/robotframework-onap/ONAPLibrary/CloudConfigSOKeywords.py
index a07f582..14547d7 100644
--- a/robotframework-onap/ONAPLibrary/CloudConfigSOKeywords.py
+++ b/robotframework-onap/ONAPLibrary/CloudConfigSOKeywords.py
@@ -18,7 +18,7 @@
 from robot.libraries.BuiltIn import BuiltIn
 
 
-class CloudConfigSOKeywords():
+class CloudConfigSOKeywords(object):
     """SO is an ONAP testing library for Robot Framework that provides
     functionality for interacting with the service orchestrator. """
 
diff --git a/robotframework-onap/tests/ONAPLibrary/SOTests.py b/robotframework-onap/tests/ONAPLibrary/SOTests.py
new file mode 100644
index 0000000..d1ad544
--- /dev/null
+++ b/robotframework-onap/tests/ONAPLibrary/SOTests.py
@@ -0,0 +1,33 @@
+# Copyright 2019 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#         http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import requests_mock
+from unittest import TestCase
+from unittest import main
+
+from ONAPLibrary.SO import SO
+
+
+class SOTests(TestCase):
+
+    def test_get(self):
+        with requests_mock.mock() as m:
+            so = SO()
+            m.get('http://test.com/', text='data')
+            resp = so.run_get_request(endpoint="http://test.com", data_path="/",
+                                      accept="application/json", auth={"user", "pass"})
+        self.assertEqual("data", resp.text)
+
+    if __name__ == '__main__':
+        main()
diff --git a/robotframework-onap/tests/runner.py b/robotframework-onap/tests/runner.py
index efee7c5..ae132d1 100644
--- a/robotframework-onap/tests/runner.py
+++ b/robotframework-onap/tests/runner.py
@@ -10,6 +10,7 @@
 from tests.ONAPLibrary.Base64KeywordsTests import Base64KeywordsTests
 from tests.ONAPLibrary.RequestsHelperTests import RequestsHelperTests
 from tests.ONAPLibrary.AAITests import AAITests
+from tests.ONAPLibrary.SOTests import SOTests
 
 # initialize the test suite
 loader = TestLoader()
@@ -17,6 +18,7 @@
 
 # add tests to the test suite
 suite.addTests(loader.loadTestsFromTestCase(AAITests))
+suite.addTests(loader.loadTestsFromTestCase(SOTests))
 suite.addTests(loader.loadTestsFromTestCase(ProtobufKeywordsTest))
 suite.addTests(loader.loadTestsFromTestCase(SoUtilsTest))
 suite.addTests(loader.loadTestsFromTestCase(UUIDKeywordsTest))
