Testing and Debugging Windows Workflow Foundation 4.0 (WF) Program

Get the flexibility of Windows Workflow Foundation working for you. Based on a cookbook approach, this guide takes you through all the essential concepts with recipes you can apply or adapt to your own specific needs.

 

Microsoft Windows Workflow Foundation 4.0 Cookbook

Microsoft Windows Workflow Foundation 4.0 Cookbook

Over 70 recipes with hands-on, ready to implement solutions for authoring workflows

  • Customize Windows Workflow 4.0 applications to suit your needs
  • A hands-on guide with real-world illustrations, screenshots, and step-by-step instructions
  • Explore various functions that you can perform using WF 4.0 with running code examples
  • A hands-on guide with real-world illustrations, screenshots, and step-by-step instructions

Read more about this book

(For more resources on this subject, see here.)

Testing a WF program with unit test framework

In this task, we will create a Test Project to do unit test for WF program.

How to do it...

  1. Add a Test Project to the solution:
    Add a Test Project to Chapter01 solution and name the project as UnitTestForWFProgram as shown in the following screenshot:

  2. Add a workflow file to the Test Project:
    Add a workflow activity to this project. Right-click the newly created Test Project, then go to Add | New Items... | Workflow | Activity and name the activity as WorkflowForTest.xaml. In the opening WF designer, create an OutArgument as OutMessage. Next, drag an Assign activity to Designer panel and assign string "Test Message" to the OutMessage argument as shown in the the following screenshot:

    In WF4, workflow is actually an Activity class. We could see "Workflow" as a conception from a macroeconomic viewpoint, while consider "Activity" as a development concept.

  3. Create unit test code:
    Open UnitTest1.cs file and fill the file with following code:

    code 33

  4. Run it:
    Set UnitTestForWorkflow as Startup project. Press Ctrl+F5 to build and run the test without debugging as shown in the following screenshot:

How it works...

In the preceding code snippet, [TestClass] indicates it is a unit test class, whereas [TestMethod] indicates a test method. When the Test Project runs, the test method will be executed automatically.

There's more...

In real application development, we can also create a separate Unit Test project and add a reference to the target project.

Read more about this book

(For more resources on this subject, see here.)

Debugging a WF program

In this task, we will debug a WF program.

How to do it...

  1. Create a workflow project:
    Create a new Workflow Console Application project under Charpter01 solution. Name the project as DebugWFProgram. In the opening WF designer panel, author a workflow as shown in the following screenshot:

  2. Create workflow host code:
    Open Program.cs file and change the code to:

    code 34

  3. Set debug break point:
    Right-click an activity, select Breadpoint | Insert Breakpoint to add debug break point.
  4. Debug it:
    Press F5 to debug a WF Program; we can refer the following screenshot:

There's more...

We can also debug a XAML workflow. Open Workflow with XML editor, insert some breakpoints, then press F5; we will see the breakpoints as shown in the following screenshot:

Summary

This article detailed the tasks of testinf and debugging a WF program.


Further resources on this subject:


Books to Consider

comments powered by Disqus
X

An Introduction to 3D Printing

Explore the future of manufacturing and design  - read our guide to 3d printing for free