End-To-End Testing

Tips Learned From Years of Automated End-to-End Testing

Forrest Goyer Programming, Testing Leave a Comment

Imagine for a moment that we’re getting ready to publish a new app or feature. Following the principles of Test Driven Development (like we always do), we have created a full suite of unit tests. We’re never pressed for time, so we’ve also built out full coverage integration and functional tests.

In order to ensure our front-end is behaving as expected, we’ll need to either manually step through the application or just push our commit to the main branch and let our continuous integration pipeline do the building and testing for us. But, if we wrote our end-to-end (E2E) tests without automation in mind, we might find the results lacking in usefulness…

This post isn’t a discussion on what E2E testing is nor a tutorial on how to get started. For that, resources like Smartbear, CircleCI, and Playwright have already published articles and tutorials that do a great job of covering that ground. In this post, we’ll talk through a few tips I’ve picked up over 5 years of championing fully automated end-to-end testing.

Adding Autocompletion to Bash Scripts

Adding Autocompletion to Bash Scripts

Jake Everhart Development Technologies, Programming, Tutorial Leave a Comment

If you have ever mashed the Tab key to finish typing a filename or to show you the available flags to use when running a program, you know that autocompletion can be a great improvement for a command-line tool. But how easy is this to implement for your own executables?

This blog is a guide providing an overview of how autocompletion can be achieved through bash. We will see some of the core concepts in action, focusing on how they interact with each other and the behavior that results.

Create your own web bots in .NET with CEFSharp!

Matt Cunningham .NET, JavaScript, Programming, Tutorial 8 Comments

Have you ever wanted to create an automated way to load, manipulate, and then act upon a web page?

Using CEFSharp (and some strategic JavaScript), you can create headless (no GUI) interfaces of Chrome’s parent browser, Chromium, and then instruct them to do pretty much anything a web browser can do.

This is a tutorial about using CEFSharp to accomplish some basic web functions with simple examples. We’ll create three automated bots that can simulate user web interaction and programmatically react to browser events using CEF and the CEFSharp library. You can follow along by copying the code provided or by downloading…

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….

Scripting with Python and AutoHotkey

Kevin Wisniewski Development Technologies, Python 7 Comments

Attention: The following article was published over 8 years ago, and the information provided may be aged or outdated. Please keep that in mind as you read the post.After I began programming, I started noticing that some of the things I was doing on my computer at home were repetitive and could be automated to save time and effort. Unfortunately …