首先明确,目前最新版Robolectric3是不支持任何JNI lib和调用的,可以参见:
http://stackoverflow.com/questions/10425591/robolectric-tanks-on-application-objects-that-load-jni-libraries-can-i-get-a-wo
和官方github issue:
https://github.com/robolectric/robolectric/issues/1171
以上两者都明确说明了,目前作者还不知道怎么实现对Native libraries的支持。只能对未来保持憧憬和期待吧。。。
对于比较复杂的应用来说,不支持JNI这件小事会直接导致Robolectric单元测试变的很鸡肋吧!瞬间就残了!
不过stackoverflow上一位外国哥们给出了折衷(将就)的方案,也算是个办法:
大概意思是在测试方法的初始化阶段配置系统property为: