API Testing Recipes in Ruby
Minimum price
Suggested price

API Testing Recipes in Ruby

The problem solving guide to API Testing

About the Book

About the Author

Zhimin Zhan
Zhimin Zhan

Zhimin Zhan is the founder and principal agile testing coach of AgileWay Pty Ltd, Australia. As an advisor and coach, he helps organizations by implementing test automation with Continuous Testing using open technologies such as Selenium WebDriver and RSpec. Zhimin is the creator of TestWise, the next-generation functional testing tool that supports functional test refactorings, and BuildWise, an award-winning Continuous Testing Server. Zhimin is a frequent speaker and author of 11 books on software testing and programming. He shares his test automation and CI experience on Substack and Medium.

Table of Contents

  • Preface
    • Who should read this book
    • How to read this book
    • Recipe test scripts
    • Send me feedback
  • 1. Introduction
    • Automated API Testing
    • An API test example
    • Skills required
    • Use Ruby
    • RSpec Test Framework
    • Avoid SoapUI alike tools
    • The benefits of text scripting
    • Testing Tool
  • 2. SOAP Web Service
    • Construct SOAP Request
    • SOAP Web Service call with Ruby
    • SOAP Request with Dynamic Data
    • Assert SOAP response
    • Use SOAP client: Savon
    • Review
  • 3. RESTful Web Services
    • LIST all records
    • CREATE a record
    • READ a record
    • UPDATE a record
    • DELETE a record
    • Using HTTP and REST client: rest-client
    • CREATE or UPDATE records with dynamic request data
    • REST web service returns JSON
    • REST web service sends JSON
  • 4. Parse Response
    • Parse XML with REXML
    • Parse XML with Nokogiri
    • Strip out namespaces in XML
    • Parse XML with Nokogiri in Slop mode
    • Parse JSON
    • Pretty print JSON
    • Parse CSV
    • Parse RSS Feed
    • Extract pattern text with Regular Expression
  • 5. Email
    • Send text email - SMTP
    • Send HTML email to multiple recipients - SMTP
    • Send email with Gmail
    • Send email with Mail gem
    • Multi-part email with Mail gem
    • Check POP3 Email
    • Verify saved email
    • Verify multi-part email with attachments
  • 6. Download Binary File
    • Download file from static URL
    • Verify the file integrity with MD5 or SHA256 Checksum
    • Verify compressed Zip
    • Verify PDF
    • Verify downloaded Excel file
    • Verify PNG
  • 7. Database
    • SQLite
    • MySQL
    • PostgreSQL
    • MS SQL server
    • Easier Database Interaction with ActiveRecord
  • 8. Generate Request Data
    • Generate dynamic dates
    • Generate random boolean value
    • Generate random number
    • Generate name and address
    • General unique IDs
    • Generate test files at specific size
    • Generate various text files from templates
    • Error handling in ERB templates
    • Generate XML
    • Modify existing XML
    • Generate JSON
    • Modify existing JSON
    • Generate JSON with model
    • Generate Zip file
    • Generate CSV file
    • Generate Excel file with spreadsheet
    • Generate Excel file with spreadsheet
    • Generate open XML spreadsheet with templates
  • 9. Headless HTML
    • Parse HTML with Nokogiri
    • Headless web browsing with Mechanize and parse HTML
    • Manage Cookies
  • 10. Synergy of API and Functional Testing
    • Check emails with MailCatcher
  • 11. Test Execution
    • Execute RSpec tests from command line
    • Execute MiniTest tests from command line
    • Custom MiniTest test execution with Rake
    • Custom RSpec test execution with Rake
    • Run as part of Continuous Testing
  • Afterword
  • Resources
    • Books
    • Tools

The Leanpub 60-day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $12 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub