Automated Testing for Dynamics CRM
Integration Testing
Custom Workflow Activities
Wael Hamze
Ramón Tébar
@CRMUG
Wael Hamze
▪ Solution Architect
▪ @WaelHamze
▪ http://www.linkedin.com/in/waelhamze
@CRMUG
Ramon Tebar
▪ Solution Architect
▪ Microsoft CRM MVP
▪ http://www.ramontebar.com
@CRMUG
Automated Testing Series
1. Unit Testing Plug-ins in Dynamics CRM 2013
2. Unit Testing Custom Workflow Activities in
Dynamics CRM 2013
3. Integration Testing Plug-Ins in Dynamics CRM
2013
4. Integration Testing Custom Workflow
Activities in Dynamics CRM 2013 [Wednesday,
August 27]
@CRMUG
Automated Testing Series
4. Integration Testing Custom Workflow
Activities in Dynamics CRM 2013
▪ This session will focus on how to write Integration Tests for your
CRM Processes using the concepts from the previous session.
▪ We will show you how to test custom workflow activities using
CRM Workflows and Custom Actions.
▪ This session will also introduce you to the xRM Test Framework
and show how you can speed up the creation of your tests.
▪ Finally you will see how you can execute these integration tests
as part of your builds.
@CRMUG
Integration Testing
Dependency 1
Component
Dependency 2
Integration Tests
Dependency 3
S
c
o
p
e
@CRMUG
CWA using Workflows
Integration
Test
Integration Test Workflow
Inputs
Workflow
Activity
Assert
Pass Fail
Trigger
Check Status
More verify
@CRMUG
@CRMUG
xRM Test Framework
@CRMUG
Demo
CWA using Workflows
https://xrmtestframework.codeplex.com
@CRMUG
CWA using Actions
Integration
Test
Integration Test Action
Inputs
Workflow
Activity
Assert
Pass Fail
Action Request Message
(Input Parameters)
Verify
Output
Action Response Message
(Output Parameters)
@CRMUG
@CRMUG
Demo
CWA using Actions
https://xrmtestframework.codeplex.com
@CRMUG
When to Run your Tests?
▪ Run your Tests before you Check-In
locally
▪ Run your Tests as part of your Build
▪ Consider using Gated Check-In Builds
@CRMUG
Why Write Integration Tests?
▪ Make sure Plug-ins & Custom Workflow
Activities work within the CRM Environment
▪ Make sure Deployment process works
▪ Create Automated Tests that be re-run to
detect Integration Issues between different
components in the same solution or other
solutions
@CRMUG
Continuous Integration
▪ Create Automated Builds
– Package CRM Components
– Deploy CRM Components
to Stage Environment
– Run your Automated Tests
to ensure quality
– Release to next
Environment
@CRMUG
Demo
Continuous
Integration
https://xrmciframework.codeplex.com
@CRMUG
Conclusion
▪ Test as early as possible
▪ Automate as much as
you can
▪ Use xRM Test Framework
for improved productivity
▪ Implement Continuous
Integration
Manual
UI
Load
Performance
Integration
Unit
@CRMUG
Wael Hamze Ramón Tébar
We want to know your
feedback
@waelhamze @ramontebar
https://xrmtestframework.codeplex.com
https://xrmciframework.codeplex.com

Automated Testing for Dynamics CRM 4 - CRMUG 2014