Как мне протестировать Silverlight 3 в VS2010? - PullRequest
2 голосов
/ 30 июня 2010

В настоящее время я работаю над проектом, использующим Silverlight 3 SDK, и хочу создать модульные тесты для своего кода Silverlight. Я хочу, чтобы эти тесты не запускались в контексте браузера. Я ссылался на двоичные файлы Silverlight Unit Testing, которые входят в SDK (Microsoft.Silverlight.Testing и Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight), что дает мне структуру, необходимую для написания тестов (присутствуют атрибуты теста).

Проблема, с которой я сейчас сталкиваюсь, заключается в том, что юнит-тесты в Silverlight не распознаются ни одним из участников теста. Test-Driven.NET будет запускать только самые базовые модульные тесты (т. Е. Метод TestInitialize отсутствует), а средство выполнения тестов Visual Studio 2010 не воспринимает какие-либо тесты для запуска вообще. Например, даже этот простой модульный тест не будет запущен:

using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace SlUnitTests
{
    [TestClass]
    public class Class1
    {
        [TestMethod]
        public void Test1()
        {
            Assert.Fail();
        }
    }
}

Есть идеи?


Edit:

Я забыл упомянуть, что этот проект изначально был проектом Visual Studio 2008. У меня были эти модульные тесты для Silverlight в VS2008 с использованием того же Silverlight 3 SDK, и они работали просто отлично. И бегущий тест ReSharper, и MSTest в командной строке могли запускать модульные тесты на основе Silverlight - контекст браузера не требовался. Юнит-тесты Silverlight прервались, когда мой проект был конвертирован в VS2010. Извините за путаницу.

1 Ответ

0 голосов
/ 30 июня 2010

К сожалению, с помощью этих сборок нелегко интегрируется в стандартный (не браузерный) интерфейс.

Один вариант, если вам нужно выполнить базовый код (без кода пользовательского интерфейса; ничего, что использует System.Windows), вы можете создать надлежащую библиотеку классов и / или тестовый проект для полного .NET в Visual Studio, а затем " ссылка"в исходных файлах вашего проекта Silverlight.

...