2

MonoTouchライブラリのAssemblyInfoファイルでInternalsVisibleToアセンブリ属性を使用して、MonoTouchユニットテスト(Touch.Unit)がMonoTouchライブラリの内部にアクセスできるようにすることはできますか?

これは、MonoTouch以外の世界で使用して、フープを飛び越えずに内部のテストを可能にするのに最適なものです。ただし、MonoTouchユニットテストで動作させることはできません。それで、先に進む前に、これがテストランナーであるiOSアプリケーションであるため、それが可能かどうかを尋ねます。ネイティブコードにコンパイルされたiOSアプリケーションがこれを実行できるかどうかはわかりません。

4

1 に答える 1

1

はい、自分で試したことを思い出せなくても、そうすべきです(またはバグです)。

重要な点は、[InternalsVisibleTo]ほとんどがコンパイラのトリックsmcsであり、MonoTouchに付属のC#コンパイラ()でサポートされていることです(BCL内で使用されているため)。そのため、Touch.Unitベースのアプリケーションからは機能しない理由はありません。

ここで、他のすべてのルールが引き続き適用されることに注意してください。たとえば、未使用のコードがすべて削除されるときにマネージリンカーが有効になっている場合(属性でマークされている場合でも)。

于 2012-12-30T18:29:26.917 に答える