man on a rubber ring working on a laptop

The importance of automated testing for Dynamics 365 Business Central - why, what & how

Reading time: 2 - 4 minutes

Software development and testing go hand in hand. If you want to ensure the integrity of your system, then any new changes that are developed will need to be tested.

Let's say you have been presented with a new change that calculates a rebate amount on your Posted Sales Invoices. It's your job to test this manually before it can go into your production/live system.

First step - create a new Sales Invoice. But you have been told that rebates only apply to specific customers - so you need to find a relevant customer to use on the Sales Invoice. Maybe you know one already, otherwise you'll need to search for one.

Next step - add a relevant item to the order with the correct type of pricing setup.

Next step - post the sales invoice. Except your company is setup to use warehousing so you have to create a warehouse shipment, create a pick, register the pick, post the warehouse shipment, post the sales invoice.

SUCCESS - it took a while but your test worked and the rebate calculation is correct.


But now someone has informed you that also need to test with a different item that uses a different pricing setup.

So you have no choice but to repeat the test.

Finally you can give the green light after repeating the test multiple times for different variants.

But Time Moves On…

12 months later you have been informed that the rebate calculation needs changing. You need to go through the testing process again - hopefully you still have your original notes!

Further on down the line - you are moving to Dynamics 365 Business Central in the cloud - you've been told that the system will update every 6 months and it's essential this rebate functionality continues to work as it was originally designed. Chances are it should be fine... but are you willing to take that risk?

It's starting to seem like running this one test over and over again is going to be very time consuming in your day to day job.

So let me introduce you to Automated Testing...

Discover automated testing for Dynamics 365

Automated testing is when code is written that will test that the system is working the way it was originally intended with expected results.

Within Tecman, using Microsoft Azure DevOps we are able to write these tests once and then run them many, many times in the future. Any time a change is made by one of our developers to one of your apps then any previously written automated tests will be automatically ran. If any test fails then this process fails and needs investigated before the developer can continue. This is called the "Build Process".

Also when we are preparing for a new release of Dynamics 365 Business Central in the cloud we can run any of the automated tests that have been developed for your system to ensure that any new functionality added or changed by Microsoft does not interfere with your customisations.

So do automated tests mean that you no longer need to do any manual testing for Dynamics 365?

No, this is not the case - manual testing is still an important part of software development and you need to ensure that any changes made to your system work the way you expect them to. The ultimate check is for the changes to be tested by those actually using the system in the real world, day in day out.

Should every change or customisation include automated tests?

In an ideal world yes - but time and budget constraints mean you should consider what is "business critical". Ask yourself - if an update from Microsoft caused part of the system to not function correctly could you manage in the short term while a fix is being implemented?

If automated testing for your Dynamics 365 Business Central system is starting to sound like something you need to invest in, speak to your account manager or get in touch with us today!

Publish modules to the "off-canvas" position.