2016-09-22 20 views
1

私のアプリではJNIを使​​用する外部ライブラリを使用していました。また
Robolectric 2 with JNI

System.loadLibrary("somelib") 

私はRobolectric 2とunitestsを持っています。このネイティブライブラリをロードするためにRobolectricを構成する方法

java.lang.UnsatisfiedLinkError: no dafprovider in java.library.path 

:とき私は、私は次の例外を取得していますこれらのテストを実行していますか?
注:私は残念ながらMaven

答えて

0

RobolectricはJNIでは動作しません使用しています。テストで

public class MyApp extends Application { 
    public void onCreate() { 
     loadJNI(); 
    } 

    protected void loadJNI() { 
     System.loadLibrary("somelib"); 
    } 
} 

:私の提案は、クラスにJNIライブラリのロードをラップし、テストの下でそれを嘲笑、またはテスト中JNIメソッドのロードを無効にすることです

public class TestMyApp extends MyApp { 
    @Override 
    protected void loadJNI() { 
     //don't do anything 
    } 
}