Testing 如何在WindowsPhone7应用程序开发中使用单元驱动编写单元测试?
我一直在搜索能够在WindowsPhone7应用程序开发中测试异步函数调用的单元测试框架。是的,我看到的是单位驱动。然而,该框架不像NUnit那样对开发人员友好(不幸的是,NUnit无法测试异步方法)。在互联网上,人们一直在使用UD进行单元测试。有人能过来给点建议吗 我的具体问题是: 1) 我在哪里包括以下初始化代码Testing 如何在WindowsPhone7应用程序开发中使用单元驱动编写单元测试?,testing,windows-phone-7,unitdriven,Testing,Windows Phone 7,Unitdriven,我一直在搜索能够在WindowsPhone7应用程序开发中测试异步函数调用的单元测试框架。是的,我看到的是单位驱动。然而,该框架不像NUnit那样对开发人员友好(不幸的是,NUnit无法测试异步方法)。在互联网上,人们一直在使用UD进行单元测试。有人能过来给点建议吗 我的具体问题是: 1) 我在哪里包括以下初始化代码 private void Application_Startup(object sender, StartupEventArgs e) { this.RootVisua
private void Application_Startup(object sender, StartupEventArgs e)
{
this.RootVisual = new UnitDriven.TestEngine(Assembly.GetExecutingAssembly());
}
2) 如何为UD编写测试用例?有了NUnit,我可以随应用程序一起编写测试用例,NUnit加载dll并执行测试。我曾尝试将其放入我的应用程序中,但Visual Studio 2010 express总是抱怨找不到符号GetContext()
3) UD附带了三个DLL。UnitDrivenLight,UnitDrivenPhone,UnitDrivenNet。。。那么,UnitDrivenLight和UnitDrivenPhone的角色是什么?目前非常混乱
谢谢
Simo我自己没有使用过unitdrive,但我已经成功地使用了Windows Phone Toolkit附带的测试框架(它支持异步测试)
事实上,我已经创建了一个添加命令行支持的。它在NuGet as中(自定义MSBuild任务使手动安装复杂化)。我自己没有使用UnitDriven,但我已经成功使用了Windows Phone Toolkit附带的测试框架(它支持异步测试)
事实上,我已经创建了一个添加命令行支持的。它在NuGet as中(自定义MSBuild任务使手动安装复杂化)。最后,在Szalay的提示下,我开始使用Microsoft的sliverlight测试框架进行异步测试,下面是示例测试类:
namespace TestApp
{
using System.Threading;
using Microsoft.Silverlight.Testing;
using Microsoft.VisualStudio.TestTools.UnitTesting;
/// <summary>
/// An example test class
/// </summary>
[TestClass]
public class ExampleTestClass : SilverlightTest
{
/// <summary>
/// Sample asynchronous test
/// </summary>
[TestMethod, Tag("Asynchronous Test"), Asynchronous]
public void SampleAsynchronousTest()
{
ThreadPool.QueueUserWorkItem(o =>
{
for (int j = 0; j < 10000; j++){}
CheckResult(10);
});
}
/// <summary>
/// Check result
/// </summary>
/// <param name="variable">result</param>
private void CheckResult(int variable)
{
Assert.IsTrue(variable == 10);
EnqueueTestComplete();
}
}
}
namespace TestApp
{
使用系统线程;
使用Microsoft.Silverlight.Testing;
使用Microsoft.VisualStudio.TestTools.UnitTesting;
///
///一个示例测试类
///
[测试类]
公共类ExampleTestClass:SilverlightTest
{
///
///样本异步测试
///
[TestMethod,标记(“异步测试”),异步]
公共无效同步测试()
{
ThreadPool.QueueUserWorkItem(o=>
{
对于(int j=0;j<10000;j++){}
检查结果(10);
});
}
///
///检查结果
///
///结果
私有无效检查结果(int变量)
{
Assert.IsTrue(变量==10);
EnqueueTestComplete();
}
}
}
最后,在Szalay的提示下,我开始使用Microsoft的sliverlight测试框架进行异步测试,下面是示例测试类:
namespace TestApp
{
using System.Threading;
using Microsoft.Silverlight.Testing;
using Microsoft.VisualStudio.TestTools.UnitTesting;
/// <summary>
/// An example test class
/// </summary>
[TestClass]
public class ExampleTestClass : SilverlightTest
{
/// <summary>
/// Sample asynchronous test
/// </summary>
[TestMethod, Tag("Asynchronous Test"), Asynchronous]
public void SampleAsynchronousTest()
{
ThreadPool.QueueUserWorkItem(o =>
{
for (int j = 0; j < 10000; j++){}
CheckResult(10);
});
}
/// <summary>
/// Check result
/// </summary>
/// <param name="variable">result</param>
private void CheckResult(int variable)
{
Assert.IsTrue(variable == 10);
EnqueueTestComplete();
}
}
}
namespace TestApp
{
使用系统线程;
使用Microsoft.Silverlight.Testing;
使用Microsoft.VisualStudio.TestTools.UnitTesting;
///
///一个示例测试类
///
[测试类]
公共类ExampleTestClass:SilverlightTest
{
///
///样本异步测试
///
[TestMethod,标记(“异步测试”),异步]
公共无效同步测试()
{
ThreadPool.QueueUserWorkItem(o=>
{
对于(int j=0;j<10000;j++){}
检查结果(10);
});
}
///
///检查结果
///
///结果
私有无效检查结果(int变量)
{
Assert.IsTrue(变量==10);
EnqueueTestComplete();
}
}
}
它是哪个工具包?在此页面中,silverlight for windows phone toolkit 2011年2月没有测试框架。我从Jeff Wilcox的网站上下载了silverlight v3。但是在那个版本中,我没有看到C#er在本页中写的[Asynchronous]标记,[Asynchronous]标记肯定存在于WP7CI中,它是从同一个源代码编译的。我不再使用Jeff的版本,因为它不支持CI环境。我从NuGet获得了wp7 CI。我仍然看不到[Asynchronous]标记可用。如何使用WP7CI测试异步方法?你能给我举个例子吗?在我使用Microsoft.Silverlight.Testing包含之后代码>,我得到了[Asynchronous]
,但我仍然会任务
定义<代码>[TestMethod][Asynchronous]公共IEnumerable TestAsynchronous()
{Task
在Silverlight中不存在。我正在写一篇关于如何使用IObservable
编写异步测试的博文,其中将介绍异步测试的主题。我完成后将发布一个链接。它是哪个工具包?在本页中,Silverlight for windows phone toolkit 2011年2月没有测试框架。我接受了silverlight v3来自Jeff Wilcox的网站。但在该版本中,我没有看到C#er在本页中写道的[Asynchronous]标记,[Asynchronous]标记肯定存在于wp7 ci中,它是从同一个源代码编译的。我不再使用Jeff的版本,因为它不支持ci环境。我从NuGet获得了wp7 ci。仍然没有看到[Asynchronous]标签可用。你如何使用wp7 ci测试异步方法?你能给我一个例子吗?在我使用Microsoft.Silverlight.Testing;加入,我得到了[异步]
,但我仍然会任务
定义…[TestMethod][asynchronous]公共IEnumerable TestAsynchronous()
{Task
在Silverlight中不存在。我正在写一篇关于如何使用IObservable
编写异步测试的博客文章,其中将介绍异步测试的主题。完成后我将发布一个链接。