モックとユニットテストに必要なときにSqlExceptionをスローする方法は?
プロジェクトでいくつかの例外をテストしようとしていますが、キャッチした例外の1つはSQlExceptionです。 行くことができないようですnew SqlException()ので、特にデータベースを呼び出さずに例外をスローする方法がわかりません(これらは単体テストであるため、通常はデータベースを呼び出さないことをお勧めします)。 NUnitとMoqを使用していますが、これを偽造する方法がわかりません。 すべてADO.NETに基づいているように見えるいくつかの回答に応答して、Linq toSqlを使用していることに注意してください。そのため、舞台裏のようなものです。 @MattHamiltonからの要求に応じた詳細情報: System.ArgumentException : Type to mock must be an interface or an abstract or non-sealed class. at Moq.Mock`1.CheckParameters() at Moq.Mock`1..ctor(MockBehavior behavior, Object[] args) at Moq.Mock`1..ctor(MockBehavior behavior) at Moq.Mock`1..ctor() モックアップしようとすると最初の行に投稿します var ex = new Mock<System.Data.SqlClient.SqlException>(); ex.SetupGet(e => e.Message).Returns("Exception message");