Gone in 10 Seconds

10

10 Seconds is all they get!

The average human attention span in 2000 was 12.5 seconds, in 2015 it dropped to a mere 8.25 seconds (less then a goldfish who zones out at 9 seconds).

To stay 'in the zone', I challenge my teams to keep the duration of their full test runs below 10 seconds.

But I still want them to be using actual azure services.

Yes, the real, latency inducing, remote services.

Using local emulators or, even worse, substitution technologies, like swapping out Azure Service Bus for RabbitMQ, is not a good idea at all.

Nothing will behave in the exact same way as the service itself: there are differences in response codes, connection limits, service quota, throttling behavior and not the least there is the impact of latency itself.

So how can you solve these contradictory requirements?

You can't rely solely on unit tests as you wouldn't have covered the service behavior.

You can't rely solely on integration tests, as the latency per test would quickly increase the test run duration.

The secret is to have the right mix and introduce additional practices that ensure the unit tests will also adhere to the same restrictions that the integration tests adhere to.

I will not go into full detail at this point, when you want to learn all the details come to Cloudbrew on December 7th & 8th, where I will uncover all the details.

About the author

YVES GOELEVEN

I've been a software architect for over 20 years.

My main areas of expertise are large scale distributed systems, progressive web applications, event driven architecture, domain driven design, event sourcing, messaging, and the Microsoft Azure platform.

As I've transitioned into the second half of my career, I made it my personal goal to train the next generation of software architects.

Get in touch

Want to get better at software architecture?

Sign up to my newsletter and get regular advice to improve your architecture skills.

You can unsubscribe at any time by clicking the link in the footer of your emails. I use Mailchimp as my marketing platform. By clicking subscribe, you acknowledge that your information will be transferred to Mailchimp for processing. Learn more about Mailchimp's privacy practices here.