diff --git a/.travis.yml b/.travis.yml
index 4da15ef..478c235 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -7,4 +7,4 @@ python:
 install:
   - pip install .
 script:
-- echo "skipping tests"
+- pytest
diff --git a/environment.yml b/environment.yml
index de104b0..9049cf6 100644
--- a/environment.yml
+++ b/environment.yml
@@ -4,3 +4,4 @@ channels:
 dependencies:
   - python=3.7
   - requests
+  - pytest
diff --git a/prism/data/schema.json b/prism/data/schema.json
new file mode 100644
index 0000000..896c055
--- /dev/null
+++ b/prism/data/schema.json
@@ -0,0 +1,42 @@
+{
+    "fields": [
+        {
+            "defaultValue": "textField",
+            "description": "this is a Text Field",
+            "name": "State2",
+            "parseFormat": "",
+            "precision": 0,
+            "ordinal": 1,
+            "scale": 0,
+            "type": {
+                "id": "Schema_Field_Type=Text"
+            }
+        },
+        {
+            "defaultValue": "0",
+            "description": "this is an Integer Field",
+            "name": "Population2",
+            "parseFormat": "",
+            "precision": 9,
+            "ordinal": 2,
+            "scale": 0,
+            "type": {
+                "id": "Schema_Field_Type=Numeric"
+            }
+        }
+    ],
+    "parseOptions": {
+        "charset": {
+            "id": "Encoding=UTF-8"
+        },
+        "fieldsDelimitedBy": ",",
+        "fieldsEnclosedBy": "\"",
+        "headerLinesToIgnore": 1,
+        "type": {
+            "id": "Schema_File_Type=Delimited"
+        }
+    },
+    "schemaVersion": {
+        "id": "Schema_Version=1.0"
+    }
+}
\ No newline at end of file
diff --git a/setup.py b/setup.py
index f8e5ce8..5ea16f2 100644
--- a/setup.py
+++ b/setup.py
@@ -13,7 +13,13 @@ setup(
     author_email='CurtLHampton@gmail.com',
     url='https://github.com/Workday/prism-python',
     packages=['prism'],
+    package_data={'prism': ['data/*']},
     install_requires=requirements,
+    extras_require={
+        'dev': [
+            'pytest',
+        ]
+    },
     keywords='prism',
     classifiers=[
         'Programming Language :: Python :: 3.6',

Add PyTest
Add a simple unit test to make sure the package successfully imports. Unit tests can be expanded in the future to offer greater coverage. 
diff --git a/tests/conftest.py b/tests/conftest.py
new file mode 100644
index 0000000..317f19d
--- /dev/null
+++ b/tests/conftest.py
@@ -0,0 +1,11 @@
+import os
+import pytest
+
+@pytest.fixture
+def rootdir():
+    return os.path.join(os.path.dirname(os.path.abspath(__file__)), '..')
+
+@pytest.fixture
+def schema_file(rootdir):
+    """Path to example JSON schema"""
+    return os.path.join(rootdir, 'prism', 'data', 'schema.json')
diff --git a/tests/test_prism.py b/tests/test_prism.py
new file mode 100644
index 0000000..bfaad2f
--- /dev/null
+++ b/tests/test_prism.py
@@ -0,0 +1,5 @@
+import prism
+
+def test_load_schema(schema_file):
+    schema = prism.load_schema(schema_file)
+    assert type(schema) is dict

environment.yml
pip install -e .
parse_log_pytest
environment.yml
pytest
3.7
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
brotlipy==0.7.0
certifi @ file:///croot/certifi_1671487769961/work/certifi
cffi @ file:///croot/cffi_1670423208954/work
charset-normalizer @ file:///tmp/build/80754af9/charset-normalizer_1630003229654/work
cryptography @ file:///croot/cryptography_1677533068310/work
exceptiongroup==1.2.2
idna @ file:///croot/idna_1666125576474/work
importlib-metadata==6.7.0
iniconfig==2.0.0
packaging==24.0
pluggy==1.2.0
-e git+https://github.com/Workday/prism-python.git@11b6c089a2d2c5b65e4ecc1caf57ccf30e426612#egg=prism
pycparser @ file:///tmp/build/80754af9/pycparser_1636541352034/work
pyOpenSSL @ file:///croot/pyopenssl_1677607685877/work
PySocks @ file:///tmp/build/80754af9/pysocks_1594394576006/work
pytest==7.4.4
requests @ file:///opt/conda/conda-bld/requests_1657734628632/work
tomli==2.0.1
typing_extensions==4.7.1
urllib3 @ file:///croot/urllib3_1673575502006/work
zipp==3.15.0

name: prism-python
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - brotlipy=0.7.0=py37h27cfd23_1003
  - ca-certificates=2025.2.25=h06a4308_0
  - certifi=2022.12.7=py37h06a4308_0
  - cffi=1.15.1=py37h5eee18b_3
  - charset-normalizer=2.0.4=pyhd3eb1b0_0
  - cryptography=39.0.1=py37h9ce1e76_0
  - idna=3.4=py37h06a4308_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=1.1.1w=h7f8727e_0
  - pip=22.3.1=py37h06a4308_0
  - pycparser=2.21=pyhd3eb1b0_0
  - pyopenssl=23.0.0=py37h06a4308_0
  - pysocks=1.7.1=py37_1
  - python=3.7.16=h7a1cb2a_0
  - readline=8.2=h5eee18b_0
  - requests=2.28.1=py37h06a4308_0
  - setuptools=65.6.3=py37h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - urllib3=1.26.14=py37h06a4308_0
  - wheel=0.38.4=py37h06a4308_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - exceptiongroup==1.2.2
      - importlib-metadata==6.7.0
      - iniconfig==2.0.0
      - packaging==24.0
      - pluggy==1.2.0
      - pytest==7.4.4
      - tomli==2.0.1
      - typing-extensions==4.7.1
      - zipp==3.15.0
prefix: /opt/conda/envs/prism-python

tests/test_prism.py::test_load_schema
environment.yml .travis.yml prism/data/schema.json setup.py
environment.yml .travis.yml prism/data/schema.json setup.py