Поделиться через


Устранение неполадок в обычных тестах

При выполнении обычных тестов может возникнуть следующая ошибка: "При выполнении обычного теста на 64-разрядной платформе функция сбора данных о покрытии кода не работает.Для устранения ошибки используются сведения из раздела Обход 32-разрядного ограничения.

Требования

  • Visual Studio Ultimate, Visual Studio Premium

Обход 32-разрядного ограничения

Инструментирование покрытия кода работает только в 32-разрядном режиме, но не в 64-разрядном.Это связано с тем, что после инструментирования для покрытия кода сборка может быть загружена только в 32-разрядном режиме.

ПримечаниеПримечание

При выполнении модульного теста на 64-разрядном компьютере без сбора данных покрытия кода данное ограничение не применяется.Это происходит потому, что обработчик тестов "VSTestHost.exe", загружающий библиотеку класса, выполняется в 32-разрядном процессе.

Для обычного теста приложение-оболочка построено с параметром "Any CPU", которое на 64-разрядном компьютере выполняется как 64-разрядный процесс.Когда данный 64-разрядный процесс пытается загрузить 32-разрядную сборку, возникает ошибка.Решить проблему можно одним из следующих способов.

Если общий тест непосредственно создает оболочку для двоичного файла, скомпилированного из рабочего кода, используется следующий метод.

  • Изменение конфигурации решения на платформу x86

Если между обычным тестом и двоичным файлом рабочего кода имеется уровень, используется один из двух следующих методов.То есть обычный тест создает оболочку промежуточного приложения в качестве окружения теста.Окружение теста, в свою очередь, выполняет рабочий код для тестирования.

  • Изменение параметров построения для приложения, загружающего двоичный файл рабочего кода

ms404657.collapse_all(ru-ru,VS.110).gifИзменение конфигурации решения на платформу x86

Изменение конфигурации решения с "Any CPU" на "x86".

Изменения конфигурации решения

  1. Щелкните правой кнопкой мыши решение и выберите Свойства.

    Откроется диалоговое окно Страницы свойств решения.

  2. В Свойства конфигурации выберите Конфигурация.

  3. Выберите Диспетчер конфигураций.

    Откроется диалоговое окно Диспетчер конфигураций.

  4. В области Платформа активного решения нажмите New.

    Откроется диалоговое окно Создание платформы решения.

  5. В Введите или выберите новую платформу выберите x86.

  6. В диалоговом окне Создание платформы решения выберите ОК.

  7. В диалоговом окне, которое запрашивает, нужно ли сохранить изменения, выберите Да.

  8. В диалоговом окне Диспетчер конфигураций в разделе Активная платформа решения убедитесь, что выбран x86, а затем выбрать Закрыть.

  9. В диалоговом окне Страницы свойств решений выберите ОК.

ms404657.collapse_all(ru-ru,VS.110).gifИзменение параметров построения для приложения, загружающего двоичный файл рабочего кода

Для инструментирования любого промежуточного приложения или окружения теста, являющегося оболочкой обычного теста, используйте следующую процедуру.Это промежуточное приложение выполнит код для тестирования.

В этой процедуре за счет изменения параметров выполняется построение промежуточного приложения для платформы x86.

ПримечаниеПримечание

Это можно сделать только если приложение в оболочке создается из проекта в решении.

Изменение параметров построения для приложения в оболочке

  1. В обозревателе решений щелкните правой кнопкой мыши проект, из которого посредническое построения приложения, а затем выберите Свойства.

    Откроется страница свойств проекта.

  2. Выберите вкладку Построение.

  3. В качестве целевой платформы укажите x86.

  4. В меню Файл выберите Сохранить выбранные элементы.

См. также

Основные понятия

Создание автоматического теста, запускающегося в виде исполняемого файла с помощью обычных тестов