<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: UDDIPTA SINGHA</title>
    <description>The latest articles on DEV Community by UDDIPTA SINGHA (@uddipta7).</description>
    <link>https://dev.to/uddipta7</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3301052%2Fc2682d47-0be5-4d9e-aabe-31db83028291.jpeg</url>
      <title>DEV Community: UDDIPTA SINGHA</title>
      <link>https://dev.to/uddipta7</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/uddipta7"/>
    <language>en</language>
    <item>
      <title>How I Moved From Manual Testing to AI-Powered API Coverage with Keploy</title>
      <dc:creator>UDDIPTA SINGHA</dc:creator>
      <pubDate>Fri, 27 Jun 2025 17:07:36 +0000</pubDate>
      <link>https://dev.to/uddipta7/how-i-moved-from-manual-testing-to-ai-powered-api-coverage-with-keploy-3l22</link>
      <guid>https://dev.to/uddipta7/how-i-moved-from-manual-testing-to-ai-powered-api-coverage-with-keploy-3l22</guid>
      <description>&lt;p&gt;📌 Introduction&lt;br&gt;
As a developer building and maintaining backend APIs, I’ve always found API testing to be one of the most repetitive and time-consuming tasks. Writing individual test cases, ensuring coverage, and keeping tests updated with every change can be exhausting.&lt;/p&gt;

&lt;p&gt;But that changed when I discovered Keploy — an AI-powered testing tool that automatically generates test cases by observing real API traffic.&lt;/p&gt;

&lt;p&gt;In this blog, I’ll share how I used Keploy in my Inventory Manager project, my journey from 0% to 100% API test coverage, and why I think AI will transform how we approach testing.&lt;/p&gt;

&lt;p&gt;🛠️ The Problem with Manual API Testing&lt;br&gt;
Before Keploy, testing looked like this:&lt;/p&gt;

&lt;p&gt;Manually writing test cases using Jest or Supertest&lt;/p&gt;

&lt;p&gt;Creating sample data, setting up mock servers&lt;/p&gt;

&lt;p&gt;Writing assertions for every request and response&lt;/p&gt;

&lt;p&gt;Updating tests with every API update&lt;/p&gt;

&lt;p&gt;Even for a small CRUD app, this could take hours — and often left you with poor coverage or outdated tests.&lt;/p&gt;

&lt;p&gt;🤖 Introducing Keploy&lt;br&gt;
Keploy offers a different approach. Instead of writing test cases manually, it records your real API traffic and auto-generates tests from it — complete with assertions and mocks.&lt;/p&gt;

&lt;p&gt;It acts as a proxy, intercepting API requests and responses to turn them into reusable tests that can be run anytime.&lt;/p&gt;

&lt;p&gt;📦 Think of it as turning real user behavior into test cases. No code, no boilerplate.&lt;/p&gt;

&lt;p&gt;✅ What I Built: Inventory Manager&lt;br&gt;
For this, I used my own project – a Node.js + Express app called Inventory Manager, with basic CRUD functionality:&lt;/p&gt;

&lt;p&gt;GET /api/items&lt;/p&gt;

&lt;p&gt;POST /api/items&lt;/p&gt;

&lt;p&gt;PUT /api/items/:id&lt;/p&gt;

&lt;p&gt;DELETE /api/items/:id&lt;/p&gt;

&lt;p&gt;This project also supports CSV/Excel import, light/dark mode, and a frontend built using vanilla HTML, CSS, and JS.&lt;/p&gt;

&lt;p&gt;🧪 Testing with Keploy: Step-by-Step&lt;br&gt;
1️⃣ Install Keploy&lt;br&gt;
On Linux/macOS:&lt;/p&gt;

&lt;p&gt;bash&lt;br&gt;
Copy&lt;br&gt;
Edit&lt;br&gt;
curl -sL &lt;a href="https://get.keploy.io" rel="noopener noreferrer"&gt;https://get.keploy.io&lt;/a&gt; | bash&lt;br&gt;
On Windows, download the binary from Keploy Releases and add the path to environment variables.&lt;/p&gt;

&lt;p&gt;2️⃣ Start Recording API Calls&lt;br&gt;
Keploy needs to record your traffic. You can run:&lt;/p&gt;

&lt;p&gt;bash&lt;br&gt;
Copy&lt;br&gt;
Edit&lt;br&gt;
keploy record -c "npm start"&lt;br&gt;
Then make API requests using curl, Thunder Client, or your frontend.&lt;/p&gt;

&lt;p&gt;Example:&lt;/p&gt;

&lt;p&gt;bash&lt;br&gt;
Copy&lt;br&gt;
Edit&lt;br&gt;
curl -X POST &lt;a href="http://localhost:5000/api/items" rel="noopener noreferrer"&gt;http://localhost:5000/api/items&lt;/a&gt; \&lt;br&gt;
  -H "Content-Type: application/json" \&lt;br&gt;
  -d '{"name": "Chair", "quantity": 5}'&lt;br&gt;
Keploy will generate YAML test files under the keploy/tests folder.&lt;/p&gt;

&lt;p&gt;3️⃣ Run the Tests&lt;br&gt;
Once the traffic is recorded, you can test your API:&lt;/p&gt;

&lt;p&gt;bash&lt;br&gt;
Copy&lt;br&gt;
Edit&lt;br&gt;
keploy test&lt;br&gt;
Keploy will replay the captured requests and compare the actual response against the recorded one.&lt;/p&gt;

&lt;p&gt;🔁 CI/CD Integration with GitHub Actions&lt;br&gt;
I also added Keploy into my CI/CD pipeline using GitHub Actions. This means:&lt;/p&gt;

&lt;p&gt;Every time I push code&lt;/p&gt;

&lt;p&gt;Keploy tests run automatically&lt;/p&gt;

&lt;p&gt;Any regression is caught immediately&lt;/p&gt;

&lt;p&gt;Here's what I added in .github/workflows/api-tests.yml:&lt;/p&gt;

&lt;p&gt;yaml&lt;br&gt;
Copy&lt;br&gt;
Edit&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;name: Run Keploy Tests
run: |
keploy test --config keploy.yaml
✅ The pipeline now builds, runs tests, and fails on regressions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;📊 Results &amp;amp; Coverage&lt;br&gt;
In just a few minutes of interacting with my own app:&lt;/p&gt;

&lt;p&gt;All CRUD endpoints were covered&lt;/p&gt;

&lt;p&gt;Mocks were auto-generated&lt;/p&gt;

&lt;p&gt;Test cases were created without writing any code&lt;/p&gt;

&lt;p&gt;API regressions (if any) were caught instantly&lt;/p&gt;

&lt;p&gt;🌟 Why I Loved Using Keploy&lt;br&gt;
🧠 No manual test writing&lt;/p&gt;

&lt;p&gt;🚀 Instant test generation from OpenAPI or real traffic&lt;/p&gt;

&lt;p&gt;📉 Detects breakage due to changes&lt;/p&gt;

&lt;p&gt;⚙️ Seamless CI/CD integration&lt;/p&gt;

&lt;p&gt;📊 Test coverage improved effortlessly&lt;/p&gt;

&lt;p&gt;It’s like having a QA assistant running in the background.&lt;/p&gt;

&lt;p&gt;✨ Final Thoughts&lt;br&gt;
Keploy changed how I think about testing. Instead of spending hours writing tests manually, I now:&lt;/p&gt;

&lt;p&gt;Record real traffic&lt;/p&gt;

&lt;p&gt;Auto-generate tests&lt;/p&gt;

&lt;p&gt;Integrate with CI/CD&lt;/p&gt;

&lt;p&gt;Focus on building, not debugging&lt;/p&gt;

&lt;p&gt;If you're building REST APIs and want reliable testing without the overhead, give Keploy a try. It feels like the future of API testing.&lt;/p&gt;

&lt;p&gt;📸 Screenshots &amp;amp; Resources&lt;br&gt;
✅ Keploy test report screenshot (Add this to your README)&lt;/p&gt;

&lt;p&gt;📘 My GitHub Repo&lt;/p&gt;

&lt;p&gt;🧪 Keploy Docs&lt;/p&gt;

&lt;p&gt;💬 Your Turn&lt;br&gt;
Have you tried AI-powered testing?&lt;br&gt;
Want help setting up Keploy on your own project?&lt;/p&gt;

&lt;p&gt;Drop a comment below — I'd love to connect!&lt;/p&gt;

</description>
      <category>api</category>
      <category>testing</category>
      <category>ai</category>
      <category>keploy</category>
    </item>
  </channel>
</rss>
