Ensure your web APIs are consistent and bug-free by implementing an automated testing process.
In Testing Web APIs you
Design and implement a web API testing strategy Set up a test automation suite Learn contract testing with Pact Facilitate collaborative discussions to test web API designs Perform exploratory tests Experiment safely in a downloadable API sandbox environment
Testing Web APIs teaches you to plan and implement the perfect testing strategy for your web APIs. In it, you’ll explore dozens of different testing activities to help you develop a custom testing regime for your projects. This practical book demystifies abstract strategic concepts by applying them to common API testing scenarios, revealing how these complex ideas work in the real world. You’ll learn to take a risk-driven approach to API testing, and build a strategy that goes beyond the basics of code and requirements coverage. Your whole team will soon be involved in ensuring quality!
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
About the technology Web APIs are the public face of your application, and they need to be perfect. Implementing an automated testing program is the best way to ensure that your web APIs are production ready.
About the book Testing Web APIs is a unique and practical guide, from the initial design of your testing suite through techniques for documentation, implementation, and delivery of consistently excellent APIs. You’ll see a wide range of testing techniques, from exploratory to live testing of production code, and how to save time with automation using industry-standard tools. This book helps take the hassle out of API testing.
What's inside
Design and implement a web API testing strategy Set up a test automation suite Contract testing with Pact Hands-on practice in the downloadable API sandbox
About the reader For dedicated software QA and testers, or experienced developers. Examples in Java.
About the author Mark Winteringham is the OpsBoss at Ministry of Testing, where he teaches many aspects of software testing.
Table of Contents PART 1 THE VALUE OF WEB API TESTING 1 Why and how we test web APIs 2 Beginning our testing journey 3 Quality and risk PART 2 BEGINNING OUR TEST STRATEGY 4 Testing API designs 5 Exploratory testing APIs 6 Automating web API tests 7 Establishing and implementing a testing strategy PART 3 EXPANDING OUR TEST STRATEGY 8 Advanced web API automation 9 Contract testing 10 Performance testing 11 Security testing 12 Testing in production
This is a good book for someone starting their journey into API testing. The author is very good at giving a clear and practical introduction into all major topics of REST API testing. It both summarizes a significant number of modern software testing best practices and it gives enough practical examples and exercises so that someone with zero experience could get a very rounded education on the topic. I liked that it covered creating a testing strategy and clearly explained how to go about exploratory testing. This one in particular is so superficially treated by testing bloggers, so I really appreciated the author taking the time to explain why, when and how to do exploratory testing. I also appreciated the chapters on performance and security testing. Both give really good, practical introductions into these non-functional testing activities.
I've seen people not like the fact that Java is used as the programming language for the automation related topics. This indeed narrows down the applicability, and while I agree with the author that the basic principles apply, regardless of language, my experience has been that you have to make significand adjustments when switching to another. Chapter 8, for example, is completely skippable if you don't work with SpringBoot. However, any other language choice would have been just as good, and just as bad, so I don't think there's reason to complain about it.
There were actually only two things I wished were done better: 1. a bit more discussion on the different type of APIs (SOAP, RPC, GraphQL). Actually GraphQL gets mentioned a couple of times, but if blinking is your thing, you might miss those mentions. 2. less links: a number of them don't even work anymore, only two years after the books was published.
Overall, this is a very good book and it's very very practical, so highly recommend it.
A guide for anyone who wants to learn how to test different aspects of an API, it has an excellent balance between the theory and how to implement various concepts.
This book is not the ordinary book you can read, which only mentions concepts of unit or integration tests and nothing more. The author emphasizes explaining how you need to think about creating a test with the idea that the reader improves your skills as a developer. The book analyzes which tools could be a good option for every kind of testing.
Another highlight is the explanation of the different types of testing that you can do on production.
I use or mention this book in the different talks at the conferences I participate in.