![](/img/trans.png)
[英]How to run some tests only in azure devops CI env but not locally
[英]How to run some NUnit tests only in azure devops CI env but not locally
與此相同: How to run some tests only in azure devops CI env but not local ,但適用於 NUnit,而不是 xUnit。
我希望我的一些測試由我的 Azure DevOps 管道運行,而不是由我的本地 (VisualStudio + R#) IDE 運行。
鏈接問題使用自定義 xUnit 屬性解決了這個問題,但我的項目使用 NUnit,因此對該問題的回答無濟於事。
擴展NUnitAttribute
和IApplyToTest(Test test)
以創建自定義屬性,允許您控制是否運行特定測試。
在ApplyToTest
的實現中,使用new IgnoreAttribute("Blah").ApplyToTest(Test test)
忽略測試(如果適用)。
IgnoreAttribute.ApplyToTest()
不是虛擬的,因此您不能安全地從IgnoreAttribute
派生並override
該方法。 改用這種組合物更安全。 使用Environment.GetEnvironmentVariable
來確定是否跳過測試,方法是檢查是否定義了特定的環境變量(您自己定義的變量,或者 AzureDevOps 定義的自動定義變量之一,例如TF_BUILD
)
.Machine
、 .User
或.Process
檢查任何環境變量都很方便。 見這里: https://stackoverflow.com/a/41410599/1662268
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.