0

アプリケーションのフレックス sdk を 4.10 にアップグレードして以来、mockolate を使用する単体テストの実行中に検証エラーが発生しました。

ByteArrayこれらは、メソッド シグネチャで a が使用されているインターフェイスをモックするときに発生するようです。

インターフェースの例:

public interface IFileSystemHelper {

    function loadFileContents(path:String):ByteArray;

}

テストクラスの例:

public class SomeTest {

    [Rule]
    public var mockolateRule:MockolateRule = new MockolateRule();

    [Mock]
    public var fileHelper:IFileSystemHelper;

    public function SomeTest() {
    }

    [Test]
    public function testMethod():void {
        // ...
    }
}

flexmojos 6.0.1 でテストをコンパイルして実行すると、次のエラーがスローされます。

VerifyError: エラー #1053: mockolate.generated.IFileSystemHelper8F2B5D281827800A824B85B588C6F2A08AE814ED の IFileSystemHelper8F2B5D281827800A824B85B588C6F2A08AE814ED の無効なオーバーライド

私の最初の疑いは、playerglobal(またはこの場合はairglobal)のsdkバージョンの問題であったため、sdk 4.10でmockolate(およびflexunit)を再コンパイルしましたが、結果はありませんでした。

動作しているように見える唯一のことは、メソッド シグネチャから ByteArray 型を削除することです...しかし、それは実際にはオプションではありません :-) (これはこれまで問題になったことはありません)

同様の問題を抱えている人はいますか?

ありがとう

4

1 に答える 1

0

この問題は通常、アプリケーションのさまざまな部分をさまざまなバージョンの SDK でコンパイルするときに発生します。

「mvn dependency:tree」の出力を確認することをお勧めします。これにより、すべての依存関係 (直接および推移的なもの) が出力されるはずです。おそらく、これは間違ったバージョンがどこから来ているのかを見つけるのに役立ちます.

于 2014-01-08T14:42:36.253 に答える