Smarty

GoConvey - (yet) another testing tool for GoLang

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

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 iconSubscribe Now
Read our recent posts
Black Friday ready: Real-time ecommerce address verification
Arrow Icon
Don’t panic. We’re not telling you to set up your Christmas lights in July or tune into your favorite holiday station. We’re not crazy here (mostly). But also, do your thang. What we ARE saying is that if you’re in ecommerce, you know just as well as Smarty does that you have to start prepping for those big holidays months in advance. Today is as good as any to see how setting up the right real-time address capabilities, like suggesting verified customer addresses as they type, can get your business in the black on Black Friday.
Address Autocomplete API JavaScript SDK tutorial
Arrow Icon
Webinar recap: Ready to take your web forms from "meh" to "wow"?In our recent webinar, we gave tips and tricks and demonstrated live coding magic. The essentials of Smarty's address autocomplete APIJavaScript SDK magic made easyIntegrating Smarty’s Address Autocomplete API using our JavaScript SDK is a breeze. Smarty also has SDKs for . NET, Android, Go, iOS, Java, PHP, Python, Ruby, and Rust, making setting up client credentials, building functions, and handling address lookups look like child’s play.
How Smarty™ sidestepped the global IT outage with 100% uptime
Arrow Icon
A recent defective update from CrowdStrike, a leading cybersecurity provider, caused a global outage affecting millions of Windows systems. Oops. The faulty update to CrowdStrike's Falcon software, intended for endpoint detection and response, led to the infamous "blue screen of death" (BSOD) and rendered many systems non-bootable. The widespread disruption primarily impacted large organizations reliant on CrowdStrike's services, sparing home PCs and systems running on Mac and Linux. Like the rest of the world, Smarty employees were also impacted.