Skip to main content
Version: 3.0.0

CRUD REST API with MongoDB

This is a sample CRUD REST API application to showcase Keploy integration capabilities using Rust and MongoDB. Let's get started! 🚀

Running App Locally on Linux/WSL 🐧

Don’t have Keploy installed yet?

Before running this sample, make sure Keploy is installed on your system.

👉 Go to Installation Guide

Get Started! 🎬

Now that we have Keploy installed, let's set up our application.

git clone https://github.com/keploy/samples-rust
cd samples-rust/CRUD-rust-mongo

We will be using Docker compose to run Mongo on Docker container.

Let's start the MongoDB Instance

Open the root directory path in your terminal and then execute the following command:

docker-compose up -d

Run the app

cargo r -r

The app will be running on port 8000.

Capture testcase

On same terminal execute the following command:

keploy record -c 'cargo r -r'

The output will be as follows: RecordRun

Generate testcase

Open Postman or any other tool, or utilize the Postman VSCode extension. Click on the import icon (shown below):

TestRun

Import the file named: Note App.postman_collection.json

After that, Postman will display a similar window:

TestRun

Hit the Create Note Request with the available data and you will get the following output in your terminal:

🐰 Keploy: 2024-08-27T21:06:57+05:30 t 8INFO
🟠 Keploy has captured test cases for the user's application. {"path": "/root/samples-rust/CRUD-rust-mongo/keploy/test-set-3/tests", "testcase name": "test-1"}

TestRun

Afterward, create a GET all request, and you will get the following output in your terminal:

🐰 Keploy: 2024-08-27T21:13:41+05:30    INFO    🟠 Keploy has captured test cases for the user's application.   {"path": "/root/samples-rust/CRUD-rust-mongo/keploy/test-set-3/tests", "testcase name": "test-3"}

Test-case

We peformed two requests, one to create a note and one to get all notes. These requests are captured as testcases by Keploy.

Run the testcases

Now, let's start keploy in test mode to run our test cases :

keploy test -c 'cargo r -r'

We get the following output in the terminal -

TestRun Voila!! Our testcases has passed 🌟

Questions? 🤔💭

For any support please join keploy slack community to get help from fellow users, or book a demo if you're exploring enterprise use cases.