Anatomy of a Mock Object software engineering unit testing Sep 23, 2019

In the last post, I talked about Mock Objects and what they are. In this post, I am going to talk a little bit about what they look like when you implement them in LabVIEW. The video below shows how to use the Class Refactoring Toolkit I created to create and use a Mock Object.

 

Continue Reading...
October 2019 Webinar software engineering unit testing webinars Sep 18, 2019

Test Driven Development

October 23 11:00am MT

I Tried Unit Testing But Testing My Existing Code Is Too Hard!

That’s because you have got the order wrong! Writing unit tests after the fact is possible, but it is always hard. Why? Because whoever wrote it never thought about testing it and...

Continue Reading...
Creating Mocks in LabVIEW software engineering unit testing Sep 16, 2019

In my last article, I introduced the concept of Mock Objects. The obvious next question is how do you implement them in LabVIEW? Many other languages either have builtin or readily available third party mock objects frameworks. LabVIEW does not. Until Now.

I’ve create some tools for...

Continue Reading...
GDevCon 1 Review conferences Sep 10, 2019

This last week I had the pleasure of attending and presenting at the first annual GDevCon in Cambridge. This post is about the presentations I saw and my takeaways.  I apologize for the length, but there was a lot of content crammed into those two days.  In order to do it...

Continue Reading...
Mock Objects software engineering unit testing Sep 09, 2019

At the upcoming CLA Summit, I will be giving a presentation on mock objects. I thought I would introduce them here first for those who aren’t familiar with them. If you read any literature on unit testing you are bound to run into them.

A Different Kind of Test Double

A Mock is a type of...

Continue Reading...
GDevCon2 Initial Thoughts conferences Sep 02, 2019
photo by Kabul Maharjan

I finally got home and am starting to recover from GdevCon. Like many of these types of conferences, attending GDevCon is like drinking from a fire hose. Add to that attending the workshop that Steve, Fab, and Joerg put on, lots of late-night discussions at the bar and a...

Continue Reading...
Continuous Integration and Unit Testing continuous integration software engineering unit testing Aug 26, 2019

If you saw my presentation at GDevCon 2, you’ll know that Test Driven Development is about more than just writing unit tests. It’s about the whole development process. However, after each development iteration, you do end up with a bunch of tests. Why not integrate them into...

Continue Reading...
LightWeight Doubles with SQLite software engineering unit testing Aug 19, 2019

In a previous article, I mentioned that one reason to use a Test Double was to increase performance. One place where this is evident is in database access. Doubles can be very useful for database operations for the following reasons:

  • Isolation from the production database – Isolate...
Continue Reading...
Test Doubles In Action design patterns software engineering unit testing Aug 12, 2019

In the last post, I talked about Test Doubles and some various types that we can use and how to implement them. The next obvious question is how do we actually use them in our tests.

Dependency Injection

Understanding Test Doubles first requires understanding the concept of dependency...

Continue Reading...
Intro to Test Doubles design patterns software engineering unit testing Aug 05, 2019

It’s no secret that many Hollywood actors use stunt doubles. These are specialists that from the outside look and behave like the stars, but have unique talents. The actors do most of the heavy lifting in terms of acting, but for fight scenes, car chases, jumping off buildings, etc. a stunt...

Continue Reading...
August 2019 Webinar continuous integration software engineering webinars Jul 31, 2019

Basic Continuous Integration with GitLab and LabVIEW – 8/28 at 11am MT

How do I make sure my unit tests get run regularly?

Maybe you have unit tests, vi analyzer tests, and a build process in place but how often do you actually run them? What if one action that we already do every day (ie...

Continue Reading...
Humble Objects design patterns software engineering unit testing Jul 29, 2019

Ego is the Enemy. Ego can cause us all kinds of problems in our personal and professional lives. When it comes to software, it is no different. Objects and VIs that have large egos create problems. One of the problems they cause is that they make it very hard for us to test our code. What...

Continue Reading...