Test d'AWS chalice avec unittest

Admettons que vous soyez en train de coder une API AWS lambda avec AWS Chalice et que vous souhaitez faire quelques tests. Voici un exemple.

Mon arborescence est la suivante:

  • app/init.py
  • app/app.py
  • tests.py

Mon app/app.py n'a que la route suivante:

@app.route('/')
def get_index():
    return {'message': 'nothing to do here'}

Le fichier tests.py correspondant:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
#!/usr/bin/env python
import unittest
import json
import app.app as app


class TestApi(unittest.TestCase):

    def test_index_response(self):
        response = json.dumps(app.get_index())
        expected = json.dumps({'message': 'nothing to do here'})
        self.assertEqual(response, expected)


if __name__ == '__main__':
    unittest.main()

C'est tout ;).

links

social