簡體   English   中英

測試項目如何參考 Maui 項目?

[英]How have test project reference Maui project?

我最近開始跨平台開發,想硬着頭皮和 go 直接進入 do.net 團隊已經開始研究的最新框架 MAUI。

我遇到的問題是嘗試在解決方案中添加另一個測試項目並引用 MAUI 項目。 因為我也是 Visual Studio 的新手,所以這可能只是一個菜鳥錯誤,我只是不知道自己在做什么,但我在這里問。

我做了什么:

  • 使用 Visual Studio 2022 Preview 17.2.0 中的默認模板創建了 MAUI 項目,目標框架為 .net6.0、.net6.0-android &.net6.0-ios)
  • 在目標框架 .net6.0 旁邊添加了 XUnit 測試項目)
  • 添加 UseMaui=true 作為測試項目的屬性

我還嘗試將所有目標框架添加到項目中,但這導致的問題多於解決的問題。 我已經嘗試關注這個開源項目,但我不確定如何實現它。

一些截圖

測試項目.csproj

Alt+Enter class 未導入

手動添加import 因為suggestions沒有添加

測試項目出錯

測試項目

此鏈接可能會有所幫助。 https://www.softwaremeadows.com/posts.net_maui_progressing_from_a_default_project_part_6_-_revisiting_unit_testing/

概括:

  1. 在您的.csproj文件中,將 .net6.0' 添加到 TargetFrameworks,如下所示。

     <TargetFrameworks.net6.0.net6.0-android.net6.0-ios.net6.0-maccatalyst</TargetFrameworks>
  2. 修改 OutputType 以使用 Condition。

     <OutputType Condition="'$(TargetFramework)'.= .net6.0'">Exe</OutputType>

這可能是因為項目目標框架不匹配。 簡單的解決方法是將目標框架添加到與測試項目中使用的匹配的 maui 項目中。 例如,如果您的測試項目基於 net6.0,只需將 net6.0 作為目標框架添加到您的 maui 應用程序項目中。

編輯 1:有時您還需要為 netX.X 構建添加空起點,如下所示

public static void Main(string[] args)
{

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM