单元测试未出现

时间:2012-09-27 05:14:06

标签: unit-testing visual-studio-2012 windows-store-apps

我在Windows 8 Release Preview上使用Visual Studio Express 2012,我似乎无法让我的单元测试出现在测试资源管理器中。

我有一个名为TestApp.Entity的类,以及TestApp.EntityTest ...

这是我的代码:

namespace TestApp.Entity.Test
{
    using System;
    using System.Net.Http;
    using Microsoft.VisualStudio.TestPlatform.UnitTestFramework;
    using TestApp.Domain;

    [TestClass]
    public class EntityTests
    {
        [TestMethod]
        public async void TestObject1Deserialize()
        {
            Uri agencyUri = new Uri("*removed*");
            HttpClient httpClient = new HttpClient();
            HttpResponseMessage response = await httpClient.GetAsync(agencyUri);

            string responseBodyAsText = await response.Content.ReadAsStringAsync();
            List<Agency> agencyList = Deserializers.AgencyDeserialize(responseBodyAsText);

            CollectionAssert.Contains(agencyList, new Agency() { Tag = "*removed*", Title = "*removed*", ShortTitle = "", RegionTitle = "*removed*" });
        }

    }
}

我认为这就是我需要做的全部,但它们仍未出现在测试资源管理器中。任何建议都会有所帮助。

3 个答案:

答案 0 :(得分:5)

根据Stephen Cleary,“您需要进行单元测试async Task而不是async void才能使其正常工作”。

这解决了问题并且出现了测试。奇怪的是,当我使用void时没有出现错误,但现在我知道了。谢谢!

答案 1 :(得分:2)

我有Visual Studio 2012,我无法在测试资源管理器中看到测试,

所以我安装了以下内容:NUnit Test Adapter

为我解决了这个问题!

答案 2 :(得分:1)

在应用程序上进行全部重建,包括包含测试类和测试方法的任何项目。它们应该很快出现在Test Explorer中。