我目前正在创建一个应用程序,用于在网页上记录人员操作并将其保存到JSON文件中。到目前为止,我已经能够做到这一点,但我在网页视图中记录列表框的操作时遇到了问题。然后,我使用JSON文件中存储的操作在robotium中创建自动化测试。
当我点击列表框时,它会加载一个带有列表框中所有项目的微调器。但是,当我尝试进行更改时,它不会记录它,因为它位于微调器中而不是Web视图中。此外,当通过robotium播放它时,它无法找到列表框,并且尽管它具有标识属性也会导致错误。
我的问题是如何记录改变列表框值的操作,我需要创建一个微调器监听器来执行此操作。如果您需要更多信息或任何代码,请告诉我,我将编辑此问题。提前谢谢
答案 0 :(得分:1)
如果我理解正确,您想知道点击了哪个项目。我会这样做:
Spinner s = new Spinner(context);
s.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// item at position "position" is clicked
}
});
答案 1 :(得分:0)
无法修复此问题,因为它是robotium中的错误。问题显示在此页面上: https://code.google.com/p/robotium/issues/detail?can=1&start=0&num=100&q=spinner&colspec=ID%20Type%20Stars%20Status%20Priority%20Milestone%20Owner%20Summary&groupby=&sort=&id=604
我想要做的是在JSON中创建一个能够通过robotium播放的方法。但是,当它们被点击和其他东西时,它目前不支持使用选择框或微调器。我现在将找到解决问题的方法。