android – 如何在junit测试中模拟用户点击列表视图项目?

我尝试编写一个junit测试用例来选择列表项和意图下一个活动,但我不知道如何通过junit编码模拟这个用户操作.有人可以帮忙吗?

另外我想问一下,是否有任何材料教授功能或语法模拟junit中的不同用户操作?

以下是我学校教程笔记中的一个示例,我想做类似这样的事情,但是在listview项目上.

public void testKilosToPounds() { 

 /* INTERACTIONS */ 
 TouchUtils.tapView(this, textKilos); // tap the EditText textKilos 
 sendKeys("1"); // sent the number 1 
 TouchUtils.clickView(this, buttonPounds); // click the button buttonPounds 

 /*CHECK THE RESULT*/ 
 double pounds; 
 try { 
 pounds = Double.parseDouble(textPounds.getText().toString()); 
 } catch (NumberFormatException e) { 
 pounds = -1; 
 } 

 //JUnit Assert equals 

 // message expected actual delta for comparing doubles 
 assertEquals("1 kilo is 2.20462262 pounds", 2.20462262, pounds, DELTA); 
 }

最佳答案 您可以通过首先获取包含该子项的View,然后将该视图传递到TouchUtils.clickView来单击ListView中的特定行.

如果您有一个ListView视图和ActivityInstrumentationTestCase2,并且您想在视图中单击位置p:

TouchUtils.clickView(this, view.getChildAt(p));

您可能还想检查视图是否实际也在屏幕上.

点赞