gpt4 book ai didi

android - 在 Android 中测试 AutoCompleteTextView

转载 作者:行者123 更新时间:2023-11-29 01:36:35 25 4
gpt4 key购买 nike

我正在使用 Robolectric 测试我的 Android 应用程序,我遇到了这个问题:在我的 MainActivity 中,我有以下代码:

private DelayAutoCompleteTextView textview_departure;
<snip>
textview_departure.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) {

JsonPlace place = (JsonPlace) arg0.getItemAtPosition(position);
departureName = place.getPlaceName();
textview_departure.setText(departureName);
uniqueDepartureStation = place.getID();

}
});

DelayAutoCompleteTextView 复制自 here .无论如何,我遇到的问题是,为了测试我的 MainActivity,我需要从我的测试类中执行上面的代码。不幸的是,在 Robolectric 中没有实现任何 ShadowAutoCompleteTextView 类,所以我不确定如何单击 AutoCompleteTextView 提供的列表中的项目。

关于如何启动和运行此测试有什么建议吗?

最佳答案

这完全取决于您需要执行的操作。阴影在那里帮助测试。他们有时会帮助初始化 View 或从他们那里获取/设置数据,否则这些数据将无法访问。这并不意味着没有影子你就不能做任何事情。

如果您能够在测试中毫无问题地构建您的 DelayAutoCompleteTextView,并且可以使用常规方法从中访问您需要的数据,那么您完全可以在不使用 Shadow 的情况下逃脱。只需使用 findViewById() 找到它并正常使用它。要在任何 View 上执行点击,您可以调用方法 callOnClick。

如果你不能做你需要的,你总是可以为这个 View 制作你自己的自定义阴影,如下所述:http://robolectric.org/custom-shadows/

关于android - 在 Android 中测试 AutoCompleteTextView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27592613/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com