Unit testing AspNetDevelopmentServerHost属性的最佳实践是什么?

Unit testing AspNetDevelopmentServerHost属性的最佳实践是什么?,unit-testing,web-applications,tfs,build-process,Unit Testing,Web Applications,Tfs,Build Process,我们有一个Web应用程序项目(实际上有几十个…),它附带了一个测试项目。在测试项目中,我有一个简单的单元测试,它使用了两种方法 在本地运行时,单元测试执行并工作 但是,当我们的TFS构建服务器尝试执行测试时,它会失败,并出现一个关于AspNetDevelopmentServerHost属性的无效路径的错误。其他团队成员可以很好地执行它 问题是,我的TFS工作区的根目录设置为c:\projects\n其中一个团队成员的根目录设置为c:\tfs2008\TFS构建服务器另一方面将PathTowerB

我们有一个Web应用程序项目(实际上有几十个…),它附带了一个测试项目。在测试项目中,我有一个简单的单元测试,它使用了两种方法

在本地运行时,单元测试执行并工作

但是,当我们的TFS构建服务器尝试执行测试时,它会失败,并出现一个关于AspNetDevelopmentServerHost属性的无效路径的错误。其他团队成员可以很好地执行它

问题是,我的TFS工作区的根目录设置为c:\projects\n其中一个团队成员的根目录设置为c:\tfs2008\TFS构建服务器另一方面将PathTowerBoot变量设置为“c:\blahblah\Release\U PublishedWebsites…”,这导致路径错误

由于我们有很多项目,我不能让每个人在每次切换项目时都重置一个环境变量


那么,在团队环境中对web项目进行单元测试的最佳实践是什么?这是真正的microsoft方式,但没有什么帮助。

您应该在
AspNetDevelopmentServer
AspNetDevelopmentServerHost
属性的
pathtowebap
参数中指定字符串
%pathtowebroot%\\WebSiteName

在构建过程中可以将环境变量设置为更改路径并使其在本地环境中仍能工作

我们使用:


公共子测试()
AssertStuff();
端接头

$(SolutionDir)
意味着它可以在每个人的环境中正常工作,并且所有测试都可以签入。每次自动创建新测试时,我们都必须对其进行更改,但无论如何,我们都在编写测试,因此这并不困难。

经过大量研究,真正的问题是,在TFS Build for web项目中,PathTowerBoot的设置不正确。网站工作得很好,但是对于具有不同输出路径的Web项目,它没有正确设置它。顺便说一句,我放弃了这个计划,希望2010年能解决这个问题。