2013-05-06 79 views
1

我刚把我的项目首次推到了TFS在线(visualstudio.com),并认为我会尝试在运行时进行一些测试。我跑了他们,他们失败了,因为我没有建立一个SQL数据库 - 这些测试只能在本地运行。托管TFS上的测试?

一个人如何去TFS上运行测试/配置SQL Server?我必须以某种方式指向一个数据库,可能是以azure托管的东西?

全新此所以任何引用/一般提示,将不胜感激。

回答

1

如果你需要做一些预先构建/测试,无论是联对未安装在默认生成代理或设立一个SQL服务器来测试针对库,那么你将几乎肯定需要提供你自己构建代理。

你仍然可以使用团队基础服务的源控制和持续集成的排队,你没有必要举办自己生成代理(你可以建立一个Azure的VM)。但是如果你已经超越了包含的简单构建代理,你需要配置你自己的。

+0

谢谢爱德华。我喜欢在Azure中针对测试数据库运行测试的想法...也许这更适合于另一个问题,但是可以告诉TFS构建和部署到Azure,并告诉Azure运行针对sql server的测试我指定? – RobVious 2013-05-06 20:02:25

+0

我这么认为! Azure和TFS可以整合提供自动部署:http://www.windowsazure.com/en-us/develop/net/common-tasks/publishing-with-tfs/ – 2013-05-06 20:16:49

1

您都可以测试你与TestCategoryAttributeDatabase值的方法。

然后configure your Build Definition来过滤只有运行测试是而不是数据库。这将阻止它们在构建服务器上运行,并在本地运行它们。

实例测试

[TestClass] 
public class Test 
{ 
    [TestMethod, TestCategory("Database")] 
    public void TestMethod 
    { 
     Assert.Fail(); 
    } 
} 

而在你构建定义(如果你正在使用Visual Studio测试运行):

TestCategory!=Database 

你可以在这里设置:

enter image description here

+0

图像不显示... – mwigdahl 2013-10-07 15:12:19

+0

@mwigdahl对我来说,源URL是http://i.stack.imgur.com/pYlw1.png – DaveShaw 2013-10-07 15:21:54

+0

我的不好,显然被我的雇主的过分网络审查员阻止...... :) – mwigdahl 2013-10-08 19:36:33