如何使用 C# 單元測試 internal 類別
在用 C# 開發的方法或類別時,可以用存取修飾詞來限制存取範圍層級,例如用 internal
來修飾某個類別只能讓相同專案的程式碼使用,而不開放給其他專案使用,不過 internal
也造成了無法讓單元測試專案直接使用該方法或類別,這時候可以怎麼處理呢?
在用 C# 開發的方法或類別時,可以用存取修飾詞來限制存取範圍層級,例如用 internal
來修飾某個類別只能讓相同專案的程式碼使用,而不開放給其他專案使用,不過 internal
也造成了無法讓單元測試專案直接使用該方法或類別,這時候可以怎麼處理呢?
SonarQube 是一套程式碼品質分析工具,你可以自架伺服器並設定掃描規則來檢查專案程式碼,並可以搭配 CI/CD 工具來做到自動化掃描,例如在 Azure DevOps 上使用 SonarQube 進行程式碼品質分析,這對維持團隊開發品質有很大的幫助。然而如果每次都要提交程式碼到版控平台,再透過 CI/CD 去掃描,就太浪費時間了,若能在 IDE 或 Editor 等開發工具上接套用 SonarQube 上所自訂的團隊規則,直接在工具中掃描當前的程式碼,這樣的開發體驗才不會被影響。
之前有提到我所認為的證照的意義和如何準備 AZ-900,但對某些第一次參加這種技術類型的考試的人來說,會想多知道一些有關考試的基本資訊,也就是考試時間和考試題型,來了解看看吧。
當網頁應用程式前面用了 Nginx 來做反向代理的時候,遇到一個狀況是,Nginx 可以在同一個網域下去建立如同虛擬目錄的路徑,例如 domain.net/YOUR-APP
,這個 YOUR-APP
其實是不存在的目錄,然而在 ASP.NET Core 中要如何將處理像這樣的虛擬目錄的問題呢?
PowerShell 現在已經發展到 7.1 版,而且還有 PowerShell Core 這個跨平台的版本,我們如何確認當前系統上的 PowerShell 版本呢?方法其實還滿多的。
我們已經可以在 Azure Data Studio 中使用 Jupyter Notebooks,那麼地表上最強的編輯器 Visual Studio Code 能否支援呢?當然可以,只要安裝 Polyglot Notebooks 這個擴充套件,就可以玩 Jupyter Notebooks 囉,來看看 Polyglot Notebooks 怎麼玩吧。
如果有在寫 JavaScript 或 TypeScript,那麼 Quokka.js 絕對是一個讓你隨手測試程式碼的好用工具,可以為當前的程式碼提供即時的執行結果回饋,讓我們可以直接在編輯器中看到運行後的結果,非常方便!不過有時候要測試的程式需要第三方套件,或是其他相依的檔案需要匯入,這時候在 Quokka.js 的環境下可以怎麼操作呢?
過去要開發 iOS App 時,不管你是用哪種技術,一定要買一台 Mac 搭配 XCode 做建置,才能安裝到手邊的 iPhone 開發機上,如果你是使用 Windows 的開發者,那麼整個開發流程就是很不順暢。如果你是使用 .NET 的 Xamarin 技術開發 iOS App 了話,那一定要知道 Xamarin 搭配 Visual Studio 的 Hot Restart 功能,讓你不用 Mac 也能將建置 iOS App 並安裝到 iPhone 上。
前陣子我的套件在 GitHub 收到一個 Issue,在使用裡面 ToJson()
這個方法的時候,因為目標屬性是個介面型別,造成原物件的屬性值不會被序列化出來,所以就造成產生出來的 Json 字串無法正確使用了。這裡試著還原當時遇到的情境。