A sample application that sends an SMS using Twilio API.
git clone https://github.com/keploy/samples-go.git && cd samples-go/go-twilio
go mod download
curl -O https://raw.githubusercontent.com/keploy/keploy/main/keploy.sh && source keploy.sh
- Sign in to the Twilio Console.
- Navigate to your Twilio project dashboard.
- Locate and copy your Account SID and Auth Token from the console.
- Obtain a Twilio Phone Number.
- Open your .env file in your project.
- Add the following environment variables to the .env file:
TWILIO_ACCOUNT_SID
=your_account_sidTWILIO_AUTH_TOKEN
=your_auth_tokenTWILIO_NUMBER
=your_twilio_phone_number
- Save the
.env
file.
go build .
sudo -E keploy record -c "./go-twilio"
To generate test suites with Keploy, you can use tools like Hoppscotch, Postman, or cURL to send API requests. Keploy will capture these API calls and create comprehensive test suites, including detailed test cases and data mocks, allowing for easier testing and validation of your application.
- Run the following command to make the POST requests:
curl --location 'http://127.0.0.1:8080/send-sms/' \
--header 'Content-Type: application/json' \
--data-raw '{
"Body": "Keploy is awesome!",
"To": "<YOUR_REGISTERED_PERSONAL_PHONE_NUMBER>"
}'
Replace <YOUR_REGISTERED_PERSONAL_PHONE_NUMBER>
with your registered personal phone number.
- Replace the placeholder
<SOME_WRONG_PHONE_NUMBER>
with an invalid phone number of your choice.
curl --location 'http://127.0.0.1:8080/send-sms/' \
--header 'Content-Type: application/json' \
--data-raw '{
"Body": "Keploy is awesome!",
"To": "<SOME_WRONG_PHONE_NUMBER>"
}'
Both API calls have now been captured as test cases and should be visible within the Keploy CLI. You should see an app directory labeled keploy
containing the test cases that were just recorded, along with the corresponding data mocks that were generated.
Now, let’s execute the application in test mode.
sudo -E keploy test -c "./go-twilio" --delay 10
Our Testcases has passed and we can see the results in the CLI.