2013-03-07 68 views
3
public class JamTest { 
Explosions EX = new Explosions(null); 
private List<Bitmap> expList ; 
Context mtx; 


@Before 
public void setUpList(){ 

    expList = new ArrayList<Bitmap>(2); 
    Bitmap bmp1 = BitmapFactory.decodeResource(//resources here, R.drawable.ic_launcher); 
    expList.add(bmp1); 
} 

@Test 
public void testInit(){ 

    assertNull(EX.getListSize().get(0));  
} 

@Test 
public void testGetlist(){ 
    assertEquals("Result",0,EX.getListSize().size()); 
}} 

这是一个简单的测试用例,我试图设置,但我需要从测试类setUpList()方法获取资源。如何访问此Android Junit测试的图像资源?谢谢。Android Junit测试位图资源

回答

2

您可以使用Robolectric来完成该操作。

为您的代码,你就必须把下面的注释:

@RunWith(RobolectricTestRunner.class) 
public class JamTest { 
... 

然后

Bitmap bmp1 = BitmapFactory.decodeResource(Robolectric.application.getResources(), R.drawable.ic_launcher); 

你看看这里使用Robolectric BitmapFactory的更多用法:http://searchcode.com/codesearch/view/5789498

+0

RuntimeEnvironment.application(3.x)和Roboelectric.application返回空值。我有RunWith注解类。可能的原因是什么? – 2016-09-20 04:23:56