在我的应用程序中,我盯着使用使用JNI的外部库。
System.loadLibrary("somelib")
我也与Robolectric 2
进行了联合。当我运行这些测试时,我得到以下异常:
java.lang.UnsatisfiedLinkError: no dafprovider in java.library.path
如何配置Robolectric
以加载此本机库?
注意:我正在使用Maven
答案 0 :(得分:0)
不幸的是, Robolectric 与JNI不兼容。我的建议是将JNI库加载到类中并在测试中模拟它,或者覆盖测试中的JNI方法加载:
public class MyApp extends Application {
public void onCreate() {
loadJNI();
}
protected void loadJNI() {
System.loadLibrary("somelib");
}
}
在测试中:
public class TestMyApp extends MyApp {
@Override
protected void loadJNI() {
//don't do anything
}
}