Encouraging Good Behavior with JUnit 5 Test Interfaces

Billy Korando Effective Automated Testing With Spring Series, Java, Spring, Technology Snapshot, Testing Leave a Comment

JUnit 5, released in September of 2017, is the first major release for the popular JUnit testing framework in a little over a decade. I recently presented on JUnit 5 at Lava One Conf in Hawaii in January. If you have heard about JUnit 5, but are not yet familiar with it, you can check out my presentation here, as well as the JUnit 5 User Guides.

While researching for my presentation, one new feature in JUnit 5 really caught my eye was the ability to declare tests on default methods in interfaces. This feature caught my eye because two issues I frequently face are encouraging developers to write automated tests and promoting consistent patterns across the enterprise. In this article we are going to look at how test interfaces can help accomplish both of these goals.



How an SMS Application Took a Job (i.e. Task)

David Pitt Conversational Apps, JavaScript, Keyhole Creations Leave a Comment

This blog is about a human’s job being replaced by automation. But, before you start composing emails and social media responses, know that it’s a job that I think most folks would gladly allow an automated mechanism to take over.

The “job” discussed in this blog is the need to contact individual users (in this case, employees) when those users forgot to accomplish a required task.

In this blog, we discuss a conversational application solution used internally at Keyhole Software for automated SMS text messaging features surrounding time tracking. The solution, implemented with conversational application platform KHS {Convo}, allowed for time entries to be submitted via text and automated, schedule-based notifications….



Four Common Mistakes That Make Automated Testing More Difficult

Billy Korando Effective Automated Testing With Spring Series, Java, Spring, Technology Snapshot, Testing 2 Comments

This article is part of my blog series on automated testing promoting my new Pluralsight course Effective Automated Testing with Spring. Automated testing is an essential step in the development process (as covered in the first blog post in this series). Unfortunately, writing automated tests is often skipped because it’s difficult or there is a high maintenance cost associated with the tests written. …



Keyhole Labs Releases KHS {Convo} Under Open Source License

Lauren Fournier Company News, Conversational Apps, Keyhole Creations Leave a Comment

Keyhole Labs has announced its release of the KHS {Convo} conversational application development platform under an Apache 2.0 open source license. Development teams can now use and modify KHS {Convo} for their own uses (even commercially) using the open source platform.

KHS {Convo} is a Node.js based platform for creating SMS text message and web-based conversational experiences. It was created by our team at Keyhole Labs.

What’s a Conversational Application? A Conversational Application provides a messaging interface for a personalized conversation between your company and a user. The ad hoc interaction is designed to provide hyper-relevant & personalized content via automated SMS text messaging that doesn’t feel automated.

For more information, please visit…



Without Automated Testing You Are Building Legacy

Billy Korando Agile, Effective Automated Testing With Spring Series, Testing 1 Comment

I have worked with several different organizations in my career on initiatives to rewrite legacy applications. A common theme for each project was that the organization struggled to deliver both maintainable and “agile” applications.

As developers, we’re curious by nature. I needed to understand exactly why this happens. In my contemplation of this common challenge, I discovered Automated Testing and became fascinated by it. I have since worked to include it as a central step as I write and maintain applications.

In this article particularly, I lay out how automated testing, or rather the lack there of, lies at the heart of many of the struggles we face as developers…