これは厄介な問題のように思われるので、私はおそらくこれに対して多くの憎しみを抱くでしょうが、ここでは何も起こりません:
私が取り組んでいるアプリケーションは外部APIに大きく依存しており、そのAPIが何かを実行するには、パーソナライズされた開発者キーが必要です。これにより、私のようなnewbをテストしているユニットが、開発者キーが危険にさらされる可能性があることを常に恐れずに再配布できるテストを作成することが特に困難になっています。
私のポイントはこれです:開発者キーが提供されていない場合、ユニットテストが実行されないようにしたいのです。また、これが発生した場合、それはアプリケーションエラーではなく、ユーザーエラーであることも明確にする必要があります。
これは、MSTestフレームワークを使用して簡単に実行できることですか?
私がこれまでに試したこと(VB)
現在、開発者キーが設定されていない場合、テストを失敗させています。
<TestClass()> Public Class Tests
Private Shared DeveloperKey As NMAKey
<ClassInitialize>
Public Shared Sub Initialize(context As TestContext)
DeveloperKey = NMAKey.TryParse("Your developer key")
End Sub
<TestMethod>
Public Sub Example()
' test condition
Assert.IsNotNull(DeveloperKey)
'
' actual test code that relies on 'DeveloperKey' being set
'
End Sub
End Class
これに関する私の問題は、ユーザーエラーと実際のユニット障害の区別がないことです。