Как добавить модуль в visual studio python
Одной из сред разработки, которая позволяет работать с Python, является Visual Studio. Преимуществом данной IDE по сравнению, скажем, с PyCharm, следует отметить прежде всего то, что в ее бесплатной редакции Visual Studio Community бесплатно доступны ряд функций и возможностей, которые в том же PyCharm доступны только в платной версии Professional Edition. Например, это веб-разработка, в том числе с помощью различных фреймворков. В то же время средства ля разработки на Python в Visual Studo доступны пока только в версии для Windows.
Итак, загрузим установочный файл Visual Studio Community по ссылке https://visualstudio.microsoft.com/ru/vs/community/. После запуска установочного файла выберем среди устанавливаемых опций пункт Разработка на Python :
После установки Visual Studio запустим ее и в окне программы выберем Create a new project :

Далее в окне создания нового проекта выберем шаблон Python Application :

На следующем окне укажем название и путь к проекту. Например, в моем случае проект будет называться «HelloApp»:

Нажмем на кнопку Create, и Visual Studio создаст новый проект:

Справа в окне Solution Explorer (Обозреватель решений) можно увидеть структуру проекта. По умолчанию здесь мы можем увидеть следующие элементы:
- Python Environments : здесь можно увидеть все используемые среды, в частности, здесь можно версию Python, которая используется.
- References : в этот узел помещаются все внешние зависимости, которые используются текущим проектом
- Search Paths : этот узел позволяет указать пути поиска для модулей Python
- HelloApp.py : собственно файл Python с исходным кодом
По умолчанию в Visual Studio уже открыт файл HelloApp.py, но он пока пуст. Добавим в него следующую строку:
print("Hello Python from Visual Studio!")
И затем в панели инструментов нажмем на зеленую стрелочку для запуска:

В результате запуска отобразится консоль, которая выведет нужную строку:
Настройка модульного тестирования для кода Python
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
Модульные тесты — это сегменты кода, которые проверяют работу других частей кода в приложении, например изолированных функций, классов и т. д. Если приложение успешно проходит все модульные тесты, то вы по меньшей мере уверены, что все низкоуровневые функции работают правильно.
В Python модульное тестирование широко используется для проверки скриптов в процессе разработки. Поддержка Python в Visual Studio включает обнаружение, выполнение и отладку модульных тестов непосредственно в контексте процесса разработки, а значит, вам не потребуется выполнять эти тесты отдельно.
Эта статья содержит краткий обзор модульного тестирования в Visual Studio для Python. Общие сведения о модульном тестировании см. в статье о модульном тестировании кода.
Выбор платформы тестирования для проекта Python
Visual Studio поддерживает две платформы тестирования для Python — unittest и pytest (доступна в Visual Studio 2019, начиная с версии 16.3). По умолчанию при создании проекта Python платформа не выбрана. Чтобы указать платформу, щелкните правой кнопкой мыши имя проекта в обозреватель решений и выберите параметр Свойства. Откроется конструктор проектов, который позволяет настроить тесты на вкладке «Тест «. На этой вкладке можно выбрать тестовую платформу, которую вы хотите использовать для проекта.
- Для платформы unittest корневой каталог проекта используется для обнаружения тестов. На вкладке Тест это расположение, а также текстовый шаблон для идентификации тестов можно изменить на значения, заданные пользователем.
- Для платформы pytest параметры тестирования, такие как расположение тестов и шаблоны имен файлов, указываются с помощью стандартного INI-файла конфигурации pytest. Дополнительные сведения см. в справочной документации для pytest.
После сохранения выбранных параметров и платформы в обозревателе тестов инициируется обнаружение тестов. Если окно обозревателя тестов еще не открыто, перейдите на панель инструментов и выберите Тест>Обозреватель тестов.
Настройка тестирования для Python без проекта
Visual Studio позволяет запускать и тестировать существующий код Python без проекта, открыв папку с кодом Python. В этих случаях для настройки тестирования потребуется файл PythonSettings.json.
- Откройте существующий код Python с помощью параметра Открыть локальную папку.

- В окне обозревателя решений щелкните значок Показать все файлы, чтобы отобразить все файлы в текущей папке.

- Перейдите к файлу PythonSettings.json в папке Локальные параметры. Если этот файл отсутствует в папке Локальные параметры, создайте его вручную.
- Добавьте поле TestFramework в файл параметров и задайте для него значение pytest или unittest в зависимости от требуемой платформы тестирования.
Примечание. Если для платформы unittest в файле PythonSettings.json не указаны поля UnitTestRootDirectory and UnitTestPattern, они добавляются и получают значения по умолчанию «.» и «test*.py», соответственно.
Примечание. Если окно обозревателя тестов уже открыто нажатие клавиш CTRL + R,A также активирует обнаружение.
Обнаружение и просмотр тестов
По умолчанию Visual Studio определяет тесты unittest и pytest как методы, имена которых начинаются с test . Чтобы просмотреть обнаружение тестов, сделайте следующее:
- Откройте проект Python.
- После загрузки проекта в Visual Studio щелкните проект правой кнопкой мыши в обозревателе решений и выберите платформу unittest или pytest на вкладке Тест в области свойств.
Примечание. При использовании платформы pytest можно указать расположение тестов и шаблоны имен файлов с помощью стандартного INI-файла конфигурации pytest. По умолчанию используется папка рабочей области или проекта с шаблоном test_*py и *_test.py . Дополнительные сведения см. в справочной документации для pytest.
import unittest class Test_test1(unittest.TestCase): def test_A(self): self.fail("Not implemented") if __name__ == '__main__': unittest.main()


Дополнительные сведения о модуле unittest и создании тестов можно получить в документации по Python 3.10.
Выполнение тестов
В обозревателе тестов можно запустить тесты несколькими способами:
- Команда Запустить все явно выполняет все тесты из списка (с учетом фильтров).
- Команда меню Запуск позволяет одновременно выполнить все тесты, которые завершились успешно, завершились неудачно или еще не выполнялись.
- Также можно выбрать один или несколько тестов, щелкнуть их правой кнопкой мыши и выбрать команду Запустить выбранные тесты.
Тесты выполняются в фоновом режиме, а обозреватель тестов обновляет их состояние по мере завершения:
- Успешно выполненные тесты обозначаются зеленым флажком, и для них указывается затраченное время:

- Неудачные тесты обозначаются красным крестом и дополняются ссылкой Output (Вывод), которая позволяет изучить выходные данные на консоли и выходные данные unittest , полученные по результатам этого теста:


Отладка тестов
Модульные тесты являются частью кода проекта, и в них могут встречаться ошибки, как и в любом другом коде. Периодически тест следует запускать в отладчике, где можно установить точки останова, просмотреть переменные или выполнить код пошагово. Также Visual Studio предоставляет средства диагностики для модульных тестов.
При тестовой отладке по умолчанию используется отладчик ptvsd 4 для Visual Studio 2017 (версии 15.8 и последующих) и debugpy для Visual Studio 2019 (версии 16.5 и последующих). Если вы хотите использовать вместо него ptvsd 3, можно выбрать параметр Использовать устаревший отладчик в меню Сервис>Параметры>Python>Отладка.
Чтобы начать отладку, установите в коде начальную точку останова, а затем щелкните в обозревателе тестов правой кнопкой мыши этот тест (или выделенный набор тестов) и выберите Отладить выбранные тесты. Visual Studio запускает отладчик Python, как для обычного кода приложения.

Вы также можете использовать команду Анализ покрытия кода для выбранных тестов. Дополнительные сведения см. в разделе Использование покрытия кода для определения объема протестированного кода.
Возможности Visual Studio
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
В этой статье описаны функции для опытных разработчиков или разработчиков, которые уже знакомы с Visual Studio. Основные сведения о Visual Studio см. в статье Обзор интегрированной среды разработки Visual Studio.
Модульная установка
Модульный установщик Visual Studio позволяет выбирать и устанавливать требуемые рабочие нагрузки. Рабочие нагрузки — это группы функций, которые должны работать в языках программирования или платформах. Такая модульная стратегия сокращает объем установки Visual Studio, ускоряя установку и обновление среды.
Установите Visual Studio бесплатно со страницы скачиваемых материалов Visual Studio, если еще не сделали этого.
Дополнительные сведения о настройке Visual Studio в своей системе см. в статье Установка версии-кандидата Visual Studio.
Создание приложений Azure с поддержкой облака
Visual Studio предлагает набор инструментов, которые позволяют без усилий создавать облачные приложения на базе Microsoft Azure. Вы можете настраивать, создавать, отлаживать, упаковывать и развертывать приложения и службы Azure непосредственно из интегрированной среды разработки (IDE) Visual Studio. Чтобы получить инструменты Azure и шаблоны проектов, при установке Visual Studio выберите рабочую нагрузку Разработка для Azure.


В Visual Studio вы можете использовать Cloud Explorer для просмотра и администрирования облачных ресурсов на основе Azure. К облачным ресурсам относятся виртуальные машины, таблицы и базы данных SQL. Cloud Explorer отображает ресурсы Azure во всех учетных записях в пределах подписки Azure, в которую вы вошли. Если для выполнения операции требуется портал Azure, Cloud Explorer отобразит ссылки для перехода в нужное расположение на портале.

В Visual Studio 2022 окно Cloud Explorer отсутствует. Дополнительные сведения см. в статье Управление ресурсами, связанными с учетными записями Azure, с помощью Visual Studio Cloud Explorer.
При необходимости используйте портал Azure для доступа к ресурсам Azure. Вы можете продолжить использовать узел Azure Cloud Explorer в предыдущих версиях Visual Studio.
Вы можете использовать службы Azure для приложений с помощью Подключенных служб:
- Подключенная служба Active Directory для использования учетных записей Microsoft Entra ID (Microsoft Entra ID) для подключения к веб-приложениям
- Подключенная служба хранилища Azure — хранилище больших двоичных объектов, очереди и таблицы.
- Подключенная служба Key Vault служит для управления секретами для веб-приложений.
Доступные Подключенные службы зависят от типа проекта. Добавьте службу, щелкнув проект в Обозревателе решений правой кнопкой мыши и выбрав Добавить>Подключенная служба.

На экране Подключенные службы выберите ссылку или знак «+», чтобы добавить зависимость службы. На экране Добавление зависимости выберите службу, которую нужно добавить, и следуйте инструкциям, чтобы подключиться к подписке и службе Azure.

Создание веб-приложений
Visual Studio помогает создавать приложения для Интернета. Вы можете создавать веб-приложения с помощью ASP.NET, Node.js, Python, JavaScript и TypeScript. Visual Studio поддерживает множество веб-платформ, таких как Angular, jQuery и Express.
Платформы ASP.NET Core и .NET Core поддерживаются на компьютерах с Windows и Linux, а также на компьютерах Mac. ASP.NET Core — это основное обновление для MVC, WebAPI и SignalR. Разработанная с нуля платформа ASP.NET Core предоставляет компактный и изменяемый стек .NET для разработки современных облачных веб-приложений и служб.
Дополнительные сведения см. на странице со сведениями о современных инструментах для создания веб-приложений.
Создание кроссплатформенных приложений и игр
С помощью Visual Studio вы можете создавать приложения и игры для macOS, Linux и Windows, а также для мобильных устройств Android, iOS и пр. С помощью Visual Studio вы можете выполнять сборку:
- приложений .NET Core для использования на устройствах Windows, macOS и Linux;
- мобильных приложений для устройств iOS, Android и Windows на C# и F# с помощью Xamarin;
- двух- и трехмерных игр на C# с помощью Инструментов Visual Studio для Unity;
- собственных приложений C++ для устройств iOS, Android и Windows. Предоставляйте доступ к общему коду в библиотеках для iOS, Android и Windows с помощью C++ для кроссплатформенной разработки.
Подключение к базам данных
Обозреватель сервера позволяет просматривать и администрировать экземпляры и ресурсы сервера в локальной и удаленной средах, Azure, Salesforce.com, Microsoft 365 и на веб-сайтах. Чтобы открыть обозреватель сервера, выберите Вид>Обозреватель сервера. Дополнительные сведения об использовании обозревателя серверов см. в статье Добавление новых подключений.
Обозреватель объектов SQL Server позволяет просматривать объекты баз данных так же, как и в среде SQL Server Management Studio. Обозреватель объектов SQL Server позволяет выполнять простые действия для администрирования и проектирования баз данных. Примеры включают редактирование данных в таблицах, сравнение схем и выполнение запросов с помощью контекстных меню.

Чтобы открыть SQL Server обозреватель объектов, выберите его значок в верхней части окна сервера Обозреватель или выберите «Просмотреть >SQL Server обозреватель объектов» в верхнем меню Visual Studio.

SQL Server Data Tools (SSDT) — это мощная среда разработки для SQL Server, базы данных SQL Azure и хранилища данных SQL Azure. С помощью SSDT вы можете создавать, отлаживать и обслуживать базы данных, а также выполнять их рефакторинг. Можно работать с проектом базы данных или напрямую с подключенным экземпляром базы данных (локально или удаленно). Чтобы получить SSDT, используйте Visual Studio Installer для установки рабочей нагрузки Хранение и обработка данных.
Отладка, тестирование и совершенствование кода
Когда вы пишете код, вы должны запустить и протестировать его на предмет ошибок и производительности. Система отладки Visual Studio позволяет отлаживать код в локальном проекте, на удаленном устройстве или в эмуляторе устройства. Вы можете просматривать код с шагом в один оператор, проверяя значения переменных. Или вы можете задать точки останова, которые срабатывают только при выполнении указанного условия. Параметрами отладки можно управлять в самом редакторе кода, не выходя из окна с кодом.
Дополнительные сведения об отладке в Visual Studio см. в статье Знакомство с отладчиком.
Чтобы повысить производительность приложения, ознакомьтесь с функцией профилирования в Visual Studio.
Для тестирования в Visual Studio предусмотрены такие возможности, как модульное тестирование, Live Unit Testing, IntelliTest, а также тестирование производительности и нагрузочное тестирование. Visual Studio также предоставляет расширенные возможности анализа кода для выявления ошибок конструктора, проблем с безопасностью и прочих дефектов.
Развертывание готового приложения
Visual Studio содержит средства для развертывания приложения для пользователей или клиентов с помощью Microsoft Store, сайта SharePoint, InstallShield или установщика Windows. Доступ ко всем этим вариантам можно получить через Visual Studio IDE. Дополнительные сведения см. в статье Общие сведения о развертывании в Visual Studio.
Управление исходным кодом и совместная работа
В Visual Studio вы можете управлять исходным кодом в репозиториях Git, размещенных любым поставщиком, включая GitHub. Также вы можете здесь найти сервер Azure DevOps Server для подключения.
Дополнительные сведения см. в статье Интерфейс Git в Visual Studio и на странице навигации документации по управлению версиями Visual Studio. Пошаговое руководство по подключению к репозиторию Git или Azure DevOps с помощью Visual Studio см. в руководстве Открытие проекта из репозитория.
Мы постоянно продолжаем развивать набор функций Git в цикле разработки с учетом ваших отзывов. Дополнительные сведения о недавно обновленных компонентах и ссылки на опрос, через который вы можете оставить свой отзыв, см. в записи блога, посвященной поддержке нескольких репозиториев в Visual Studio.
Способ открывать проекты из репозитория GitHub с помощью Visual Studio 2019 зависит от версии. В частности, если вы установили версию 16.8 или более позднюю, вам доступны новые полностью интегрированные возможности Git. Дополнительные сведения см. на странице документации по управлению версиями Visual Studio.
Пошаговое руководство по подключению к репозиторию Git или Azure DevOps с помощью Visual Studio см. в руководстве Открытие проекта из репозитория.
Оптимизация интерфейса Visual Studio в Microsoft Dev Box
Эта функция сейчас доступна в виде общедоступной предварительной версии. Эти сведения относятся к функции, которая может быть существенно изменена перед выпуском. Корпорация Майкрософт не дает явных или подразумеваемых гарантий относительно предоставленных здесь сведений.
С помощью Visual Studio 17.7 (предварительная версия 3) вы можете предварительно генерировать кэши Visual Studio и включать их в образ поля разработки. В результате Visual Studio загрузит решение и включите функции интегрированной среды разработки быстрее. Вы также можете повысить производительность Git в больших репозиториях, включив оптимизацию графа фиксации Git в образах поля разработки.
Следующие шаги
- Если в Visual Studio нет необходимой вам функции, ее можно добавить. Вы также можете персонализировать IDE с учетом своего рабочего процесса и стиля, включить поддержку внешних инструментов, которые еще не интегрированы с Visual Studio, а также изменить существующие функции, чтобы повысить производительность. Сведения о последней версии средств расширения Visual Studio (VS SDK) см. в статье Пакет SDK Visual Studio.
- Для создания анализаторов и генераторов кода можно использовать .NET Compiler Platform (Roslyn). Все необходимое вы найдете на сайте Roslyn.
- Вы также можете найти существующие расширения для Visual Studio, созданные разработчиками Майкрософт и сообществом разработчиков Visual Studio.
- Дополнительные сведения о расширении среды IDE Visual Studio см. здесь.
См. также
- Обзор интегрированной среды разработки Visual Studio
- Новые возможности Visual Studio 2017
- Новые возможности Visual Studio 2019
- Новые возможности Visual Studio 2022
Начало работы с модульным тестированием
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
Используйте Visual Studio, чтобы определить и запустить модульные тесты для обеспечения работоспособности кода, нужного объема протестированного кода, а также для обнаружения ошибок и сбоев, прежде чем с ними столкнутся клиенты. Выполняйте модульные тесты регулярно, чтобы обеспечить правильную работу вашего кода.
В этой статье код использует C# и C++, иллюстрации представлены на C#, однако концепции и функции применимы к языкам .NET, C++, Python, JavaScript и TypeScript.
Создание модульных тестов.
В этом разделе описывается создание проекта модульного теста.
-
Откройте проект, который хотите протестировать в Visual Studio. В целях демонстрации примера модульного теста в этой статье тестируется простой консольный проект C# или C++ «Hello World» с именем HelloWorld. Пример кода для такого проекта выглядит следующим образом:
namespace HelloWorld < public class Program < public static void Main() < Console.WriteLine("Hello World!"); >> >
#include int main()
Совет Только для C#: вы можете создавать проекты модульных тестов из кода, используя более быстрый метод. Дополнительные сведения см. в разделе Создание проектов модульных тестов и методов теста. Чтобы использовать этот метод для .NET Core или .NET Standard, требуется Visual Studio 2019 или более поздней версии.
На следующем рисунке показано модульный тест MSTest, поддерживаемый в .NET.

Нажмите Далее, выберите имя для тестового проекта и нажмите Создать.

Нажмите Далее, выберите имя для тестового проекта и нажмите Создать.
Проект добавляется в решение.




- MSTest
- NUnit
- xUnit
- Платформа Microsoft Native Unit Test Framework
using Microsoft.VisualStudio.TestTools.UnitTesting; using System.IO; using System; namespace HelloWorldTests < [TestClass] public class UnitTest1 < private const string Expected = "Hello World!"; [TestMethod] public void TestMethod1() < using (var sw = new StringWriter()) < Console.SetOut(sw); HelloWorld.Program.Main(); var result = sw.ToString().Trim(); Assert.AreEqual(Expected, result); >> > >
using NUnit.Framework; using System.IO; using System; namespace HelloWorldTests < public class Tests < private const string Expected = "Hello World!"; [SetUp] public void Setup() < >[Test] public void TestMethod1() < using (var sw = new StringWriter()) < Console.SetOut(sw); HelloWorld.Program.Main(); var result = sw.ToString().Trim(); Assert.AreEqual(Expected, result); >> > >
using System; using Xunit; using System.IO; namespace HelloWorldTests < public class UnitTest1 < private const string Expected = "Hello World!"; [Fact] public void Test1() < using (var sw = new StringWriter()) < Console.SetOut(sw); HelloWorld.Program.Main(); var result = sw.ToString().Trim(); Assert.Equal(Expected, result); >> > >
#include "pch.h" #include "CppUnitTest.h" #include "../HelloWorldUnitTestCPP/HelloWorldUnitTestCPP.cpp" // Update using your project name using namespace Microsoft::VisualStudio::CppUnitTestFramework; namespace HelloWorldTests < TEST_CLASS(HelloWorldTests) < public: TEST_METHOD(TestMethod) < std::string expected = "Hello World!\n"; std::stringstream buffer; std::streambuf* sbuf = std::cout.rdbuf(); // Save cout's buffer std::cout.rdbuf(buffer.rdbuf()); // Redirect cout to the stringstream buffer // Call main() in your test int result = main(); // When finished, redirect cout to the original buffer std::cout.rdbuf(sbuf); std::cout >; >
Выполнение модульных тестов
- Откройте обозреватель тестов. Откройте обозреватель тестов, выбрав Тест>Обозреватель тестов в верхней строке меню (или нажмите клавиши CTRL + E, T).
- Запустите модульные тесты, нажав Запустить все (или нажмите клавиши CTRL + R, V).


После завершения зеленый флажок указывает, что тест пройден. Красный значок «x» указывает на сбой теста.


Используйте обозреватель тестов для запуска модульных тестов из встроенной платформы тестирования (MSTest) или сторонней платформы тестирования. Вы можете группировать тесты по категориям, фильтровать список тестов, а также создавать, сохранять и запускать списки воспроизведения тестов. Кроме того, с его помощью можно выполнять отладку тестов и анализировать производительность тестов и покрытие кода.
Просмотр результатов динамического модульного тестирования (Visual Studio Enterprise)
Если вы используете платформу тестирования MSTest, xUnit или NUnit в Visual Studio 2017 или более поздней версии, можно просмотреть динамические результаты модульных тестов.
Для выполнения этих шагов требуется Visual Studio Enterprise вместе с кодом .NET и одной из следующих платформ тестирования: MSTest, xUnit или NUnit.
- Включите Live Unit Testing в меню Тест, выбрав Тест>Live Unit Testing>Запустить.






Дополнительные сведения о Live Unit Testing см. в разделе Live Unit Testing.
Использование сторонней платформы тестирования
Вы можете запускать модульные тесты в Visual Studio с помощью сторонних тестовых платформ, таких как NUnit, Boost или Google C++ Testing Framework, в зависимости от вашего языка программирования. Чтобы использовать стороннюю платформу тестирования, выполните следующие действия.
- Используйте диспетчер пакетов NuGet, чтобы установить пакет NuGet для выбранной платформы.
- (.NET) Начиная с Visual Studio 2017 версии 14.6, Visual Studio включает в себя предварительно настроенные шаблоны тестовых проектов для платформ тестирования NUnit и xUnit. Шаблоны также содержат необходимые пакеты NuGet, чтобы обеспечить поддержку.
- (C++) В Visual Studio 2017 и более поздних версиях уже включены некоторые платформы, такие как Google C++ Testing Framework. Дополнительные сведения см. в статье Написание модульных тестов для C/C++ в Visual Studio.
Добавление проекта модульного тестирования:
- Откройте решение, содержащее код, который нужно протестировать.
- В обозревателе решений щелкните решение правой кнопкой мыши и выберите Добавить>Создать проект.
- Выберите шаблон проекта модульного теста. Для того примера — NUnit


Щелкните Далее, назовите проект и нажмите кнопку Создать.
