のいくつかの並べ替え(アヒルパンチは、より正確な用語でもよい)高度に結合されたコードのユニットテスト.net;モックを注入する反射?
class Foo{
private Bar highlyCoupled = new highlyCoupled();
public bool DoTheThing(){
return highlyCoupled.doesTheThing();
}
}
がfooを開いて注入するためにリフレクションを使用することが可能です...のは、私が何かのように見えるのクラスの束を持っているとしましょうmockHighlyCoupledは、結合の高い場所にありますか?このような状況で約...
class DoubleFoo : Foo{
public bool DoTheOtherThing(){
return DoTheThing();
}
}
はhighlyCoupledはそれの場所に挿入されたモックを持って何を
を継承することはできますか?
反射を必要としないようにコードをリファクタリングすることは、残念ながら不可能です。
2行目に構文エラーがあります。 –
深刻なリファクタリングがなければ、テストは非常に脆くなる可能性があります。 – jrummell
あなたは何を求めていますか?リフレクションを使用してプライベートメンバーを設定できますか?はい、できます。そうすることに問題がありますか? – cadrell0