技术开发 频道

详解如何在WPF中创建测试工作流

  【IT168 技术文档】到目前为止,这个程序并不是特别有趣。它只能在控制台中运行,并且不能接受任何的参数输入。大部分有意义的程序都必须能够处理输入输出数据。另外,现在的这个程序并不是很容易测试。

  在这个练习中,你将会修改SayHello活动,为其添加参数用于返回数据,而不是使用WriteLine活动将数据打印在控制台中,从而使之能在非控制台的程序中使用。 这次我们使用一种测试优先的方式。首先,你需要建立你的测试项目,在一开始它会失败,然后你需要添加必要的代码让其通过。

  最终的程序将会等同于如下代码的功功能。

  private static string SayHello(string name)
  {
  
return "Hello " + name + " from Workflow 4";
  }
  Private Shared Function SayHello(ByVal name As String) As String
  Return
"Hello " & name & " from Workflow 4"
  End Function

   1.打开解决方案

  你可以使用练习4中建立的解决方案作为这个练习的起始方案。或者你可以根据以下步骤开始练习5。

  (1)选择Start | All Programs | Microsoft Visual Studio 2010以运行Microsoft Visual Studio 2010。

  (2)打开%TrainingKitInstallFolder%\Labs\ IntroToWF\Ex5-Testing\Begin目录下的练习5 的起始方案以开始这个练习。

  (3)按CTRL+SHIFT+B键编译解决方案。

  2.建立单元测试项目

  (1)首先我们为工作流建立单元测试来验证其运行结果正确与否。在Solution Explorer中,右键单击HelloWorkflow解决方案,选择Add / New Project并设置项目选项。

  ·选取Installed Templates,选择Visual C#或Visual Basic然后选择Test

  ·选择Test Project

  ·设置项目名称为HelloWorkflow.Tests


在解决方案中添加新的测试工程 (C#)


在解决方案中添加新的测试工程 (Visual Basic)

  (2)右键单击HelloWorkflow.Tests项目,并单击Add Reference。选择Projects选项卡,添加HelloWorkflow为项目引用。重复以上步骤,使用.NET选项卡添加System.Activities库为引用。

  (3)右键单击UnitTest1.cs (C#)或UnitTest1.vb (Visual Basic),选择Rename并重命名为SayHelloTests.cs (C#)或SayHelloTests.vb (Visual Basic)。当提示重命名UnitTest1类时选择Yes。

0