Web Analytics
Back
Featured image of post Visual Studio 2022 遠端測試 - 連結至 Linux/WSL 執行遠端測試

Visual Studio 2022 遠端測試 - 連結至 Linux/WSL 執行遠端測試

不用搬移程式到 Linux,也能在 Linux 環境執行測試

簡介

從 Visual Studio 2022 開始您可執行遠端測試,你可以透過 DockerWSL(Windows Subsystem for Linux)、或 ssh 方式連線並進行測試,只需要在專案內加入 testenvironments.json 檔案,即可連線到 Linux 並執行測試。

 

 

前置作業 - Docker

步驟 1. 安裝 Docker Desktop for Windows,安裝過程就不贅述,可以自行 Google 搜尋相關內容。

 

步驟 2. 在任意地方建立 Dockerfile,加入下列內容(可以依據需求更改 sdk 版本),我們預先安裝遠端除錯工具,才能執行遠端測試

FROM mcr.microsoft.com/dotnet/core/sdk:3.1

RUN wget https://aka.ms/getvsdbgsh && \
    sh getvsdbgsh -v latest  -l /vsdbg

 

步驟 3. 開啟命令提示字元或 powershell,輸入下列指令建立名稱為 testenv 的 image。記下這個名稱,之後建立設定檔案時會用到。

docker build -t testenv -f Dockerfile .

 

 

前置作業 - WSL (Windows 10)

適用版本: Windows 10 2004 版或更高版本 (組建19041和更新版本) 或 Windows 11。

步驟 1. 以管理員身分執行 Powershell,並輸入 wsl -l -o 指令檢視 linux 版本

 

步驟 2. 輸入 wsl --install -d Ubuntu-20.04 安裝 20.04 LTS (請依據實際需求安裝),完成後即會自動開啟 WSL 畫面。記下你的版本名稱,之後建立設定檔案時會用到。

 

步驟 3. 於 WSL 畫面輸入下列指令,將 Microsoft 套件簽署金鑰新增至您的受信賴起點清單,並新增套件存放庫。

wget https://packages.microsoft.com/config/ubuntu/21.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

 

步驟 4. 輸入下列指令安裝 aspnetcore-runtime-3.1 (或 6.0)

您也可以安裝 SDK 如:aspnetcore-sdk-3.1

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-runtime-3.1

 

 

遠端測試設定

步驟 1. 在方案資料夾下新增 testenvironments.json 檔案,加入下列內容

{
"version": "1",
"environments": [
      {
      "name": "linux dotnet-core-sdk-3.1",
      "type": "docker",
      "dockerImage": "mcr.microsoft.com/dotnet/core/sdk"
      },
      {
        "name": "WSL-Ubuntu",
        "type": "wsl",
        "wslDistribution": "Ubuntu-20.04"
      },
      {
      "name": "ssh-remote",
      "type": "ssh",
      "remoteUri": "ssh://user@hostname:22"
      }	
  ]
}

 

步驟 2. 右鍵點選方案 > 加入 > 新增方案資料夾 > 名稱輸入 Solution Items

 

步驟 3. 右鍵點選方案資料夾 > 加入現有項目

 

步驟 4. 選擇第一步驟建立的 testenvironments.json

 

步驟 5. 點選檢視 > 測試總管 (Test Explorer),你會發現右邊出現下拉選單,你可以選擇測試環境進行單元測試

 

 

參考資料

  1. 安裝 WSL
  2. 在 Raspberry Pi 上進行 .NET 應用程式的偵錯工具
Built with Hugo   Theme Stack designed by Jimmy