Testing Microsoft Dynamics CRM: Beyond the UI

(Kyle) #1

My company is using Microsoft Dynamics CRM and customizing it. We are currently testing it with essentially all UI tests. Obviously as testers we should strive for most of our testing to be done with Unit and Integration testing.

Does anyone have input on how they test a customized third party tool like this? The difficulty is that most of our changes happen via modules and configuration changes, not in code. There is an API for Dynamics CRM and I was thinking the best way to test it may be adding data via the API and then checking it was created correctly.

What say you? Any ideas or resources?

How to test SAP
(Jesper) #2

Hi @kdellis

Thank you for reminding us that there’s also projects in the space of customizing MS dynamics CRM, AX, SAP, Oracle and other COTS enterprise tools. We talk so much about purpose built web and app’s that many enterprise solutions are forgotten. We forget while there is software shops developing health care applications, there are other people that sit and configure and customize those solutions. And in that context (an others [1]) testing happens too.

here’s some random thoughts: :wink:

  • One problem I faced was tracking what was changed - try to put the config-files and other changes under source control, if possible…
  • Are you looking to into testing it using some GUI tools - perhaps MS coded UI or similar that can hook into the interface?
  • Besides test data, the test environments have always been tricky. If there is a test environment at all. The “developer” might sit and configure it in the same instance as testing is happening, so another issue would be to agree went it’s time to do what - so that you don’t fall over each others feet. … Perhaps pairing would be good.

1: https://jlottosen.wordpress.com/2017/05/24/testing-across-the-it-landscape/ and https://jlottosen.wordpress.com/2017/05/19/cmmc-application-cycle/

(Kyle) #3

Thank you for the articles you wrote, interesting reads.

We do currently have some UI testing using Nightwatch and Selenium Webdriver, but I would ideally like to test in more stable and faster ways.

And thank you for your other thoughts, we do some of these things already but I will definitely ponder them more deeply. I am brand new to the team so have plenty of opportunity to reconfigure how our team now works with the testers.

(Elise) #4

Hi Kyle,
I suggest you look into an automated testing tool called Rapise. It has out-of-the-box support for testing Microsoft Dynamics CRM. Specifically, it has special support for interacting with the Dynamics CRM grids. You could download a free trial of Rapise and see how it works for your situation. See this document for details.
Full disclosure: I’m a tester at Inflectra, the company that makes Rapise.

(Kyle) #5

Any recommendations more geared toward how to move away from testing the UI?

(D) #6

We did a simialr thing but with a competitor system, so a lot of the code was configured especially for processes within the organisation. For the most part (due to budget issues in getting automated tools) had to rely on a lot of manual processess, so documentation of the configured workflows, flow diagrams etc. stored in Jira and then reflected in manual test scripts - thankfully managed to get resource to run through these regression scripts. We also ensure that a transport style policy in place for changes, so that DEV/QA/PRD matched once change live.

One think I would mention is the need to ensure you know how the system is operating before any quarterly upgrades - I joined the project after a few of these and there was a lot of confusion if the upgrade had changed a process/caused a bug - so first thing I did was to ensure the behaviour/position of system known before any supplier update!