New 42-day free trial
Smarty

GoConvey - (yet) another testing tool for GoLang

Jonathan Oliver
Jonathan Oliver
 | 
December 26, 2013
Tags
GoConvey features a clean DSL, comprehensive set of built-in assertions, an auto-reloading web UI and fully integrates with GoTest.

It's now been a few months since I decided that the kind of testing tools I wanted for Go programming hadn't yet been created (or I just hadn't found them yet...). So, about 4 months ago I started work on GoConvey and a month later came the first release.

The coolest thing about GoConvey (other than the clean DSL, comprehensive set of built-in assertions, and the fact that it integrates fully with go test) is the built-in auto-reloading web UI that reports your test results to your web browser whenever a relevant file is saved (HTML5 notifications included). I've always been a fan of terminal scripts that run tests on changes but had never seen it done in the browser. Thanks to Matt at Smarty™ for turning that idea into a reality that was even more fun to use than I initially thought.

Since the initial release a lot has been improved. Here's a summarized listing:

Web UI

  • You can now ignore folders from the web UI
  • Complete folder listing on left
  • More reliable diff views
  • Browser/HTML5 notifications
  • invoke tests manually (click refresh button)
  • Failures now display 'story' context
  • "Busy" indicator when tests are running
  • Audio easter egg (can you find it?)
  • Bug fixes
  • Coverage reports (for those using Go version 1.2+)

Web server

  • Completely rewritten (with full test coverage--using GoConvey!)
  • Stability improvements
  • Configure number of concurrent testing goroutines
  • Lots of bug fixes

Core updates

  • Go 1.2 support
  • OS X Mavericks terminal support
  • Easier installation; just one go get -t command
  • New ShouldBeZeroValue assertion
  • Bug fixes

While there are many things I'd like to do to improve GoConvey I'm really proud of it for now. Thanks also go to the Gopher Academy Blog for publishing our guest post in its recent Go Advent listing (and thanks again to Matt for writing the article!). I plan on publishing several more posts about how to get the most out of GoConvey to drive the development of your software systems. Stay tuned...

Subscribe to our blog!
Learn more about RSS feeds here.
rss feed icon
Subscribe Now
Read our recent posts
Smarty announces virtual user conference: Save the date for Pinpoint, by Smarty
Arrow Icon
OREM, UT, August 18, 2025—Smarty®, the leader in address data intelligence, is inviting developers, data decision-makers, and certified address nerds to join our first-ever 2-day virtual user conference: Pinpoint. This interactive online event will begin on November 11, 2025, and bring together a verifiably fun mix of industry experts, technical deep dives, and business-boosting insights. Participants will walk away with a better understanding of how address validation, geocoding, data enrichment, and autocomplete can solve their toughest data challenges—and maybe even score some sweet prizes while they’re at it.
How address data became Fabletics's (and others') secret sauce
Arrow Icon
Address data accuracy isn't just about getting mail delivered. Having quality address data will directly impact revenue, compliance, and customer experience. In a recent webinar, we explored real-world case studies showing how companies across industries leverage address verification and geocoding to solve expensive problems and unlock new opportunities. Healthcare data: Compliance and accuracy at scaleCuratus, a healthcare data provider, faced a critical challenge with provider directory accuracy.
Usage notifications | Get notified before hitting your lookup limit
Arrow Icon
Burning the end of a brisket can lead to some tasty results (we’re looking at you, burnt ends), but unexpectedly burning through your lookups? Not so appetizing. All users receive notifications when their API usage reaches 90% and 100%. To help users further leverage their lookups, Smarty’s cooked up a solution: the ability to get notification emails when usage reaches three additional intervals: 25%, 50%, and 70%. With these notifications working alongside usage by key and limit by key, you can manage your API usage better.

Ready to get started?