I've been diving into AI test case generation tools to understand how they perform in real-world projects. Some platforms I've looked at include Apidog, CloudQA, Loadmill, Test Composer, and Qodo, all of which claim to help speed up test creation and improve coverage.
I'm curious to know: How effective are the AI-generated test cases when used in practice? Do they actually lessen the amount of manual effort required, or do you find yourself having to make significant tweaks? What workflows or strategies have you found that make adopting these AI testing tools easier? I'd especially love to hear any experiences you have regarding API and integration testing.
11 Answers
I've been using Apidog for generating API tests and honestly, I was pretty impressed with the outputs. They aren't perfect for all edge cases, but it's great for basic CRUD operations. Plus, generating tests from OpenAPI specs really cuts down on the setup time!
ben yaptım
Thinking through the test cases yourself is crucial for understanding what the code needs to do. Relying completely on AI can be risky, even if the tools are effective. You could end up with tests that don't quite align with the intended functionality.
Exactly! If the AI generates tests based solely on input without context, it might miss key requirements and create logical errors.
Right! AI might make logical assumptions that don't hold up in practice, leading to problems later.
I've tried several tools, including Loadmill and Qodo. They work well for quick coverage, but you still end up adjusting a lot of what the AI spits out. Great for boilerplate, but complex logic still needs human touch.
We experimented with those for API testing and found they were good for laying down the base tests. Still, manual refinement is essential for edge cases. The generated suggestions pair nicely with a solid schema or OpenAPI spec; otherwise, things can get messy quickly. We ensure to integrate tests early in the development flow so they evolve with each change. Also, using Coderabbit for PR reviews helps keep our test logic clean and flags potential disruptions to existing cases.
A good chunk of my tests are generated by AI! Other than a few special cases, AI-generated tests help cover a lot more ground. Just remember, your code needs to be set up to be testable for this approach to work well.
Before using AI, be sure to identify your edge cases and scenarios. From my experience, generative AI is decent at creating boilerplate code and sometimes identifying scenarios, but it tends to stick to safe paths. Provide just an abstraction of your code in the prompt instead of the entire class to get better tests that actually challenge the functionality.
Yep! Totally agree with the importance of tweaking AI-generated cases to fit the real scenario.
Ever since the release of advanced AI like ChatGPT-4, I haven't had to write a unit test myself! It's pretty wild.
Honestly, I think you’re better off just doing it manually. At that point, those "AI test case generation tools" feel like a way to market products that don't do the job as well as a human can. Just stick to coding it out yourself!
As someone who works in applied machine learning within software engineering, I've seen emerging techniques like fuzz testing and metamorphic testing gaining ground. These methods often build on human-written test cases. While some level of success with generative AI is possible, it really depends on how complex the problem is you're dealing with.

How well does it manage authentication or headers? I've noticed some tools struggle with those specifics when generating tests.