gpt4 book ai didi

android - Robotium 测试失败,出现 : junit. framework.AssertionFailedError : View can not be clicked!

转载 作者:行者123 更新时间:2023-11-28 20:25:16 24 4
gpt4 key购买 nike

我刚开始使用 Robotium 并尝试了第一个非常简单的测试,但遇到了一些我无法解释/对我来说似乎不合逻辑的问题。

我有一个带有 ActivityGroup 的 TabHost,在 tabhost 内容部分中显示的每个 Activity 上都有一个切换按钮。当我按下切换按钮时,选项卡内容区域更改为另一个 Activity (mTabHost.setCurrentTab(Intent intent);)。每个 Activity 都有这样一个切换按钮,总是带有标签“切换”。当我在第二个 Activity 上单击切换按钮时,它将切换回第一个(全部在选项卡内容区域内)。

|-----------------|
| TabHost | |
|-----------------|
| |
| Toggle-Button |
| |
| (ActivityGroup: |
| Activities |
| change in here) |
| |
|-----------------|

现在,手动这一切工作正常,但 robotium 测试没有。当我尝试单击第二个 Activity 的切换按钮时,我收到一条错误消息“junit.framework.AssertionFailedError:无法单击 View !”

这是我的测试 - 非常简单和小:

    solo.sleep(5000);
solo.waitForActivity("StartTabsActivity", 10000);

solo.clickOnButton("Toggle");
// this will swap the activity inside the tabhost content section

solo.sleep(5000);
solo.waitForActivity("StatusListActivity", 5000);

solo.assertCurrentActivity("Expected StatusList activity", "StatusListActivity");

LogUtils.logD("robotium: button label: " + solo.getButton(1).getText());
// ... outputs: robotium: button label: Toggle

LogUtils.logD("robotium: button clickable: " + solo.getButton(1).isClickable());
// ... outputs: robotium: button clickable: true

solo.clickOnButton("Toggle");
// ... throws: junit.framework.AssertionFailedError: View can not be clicked!

我在这里不明白的是:我正在检查带有“切换”标签的按钮是否存在并且可以点击,但是,我收到一条错误消息“无法点击此 View 。”。并且在相应的当前 Activity 中只有一个“切换”按钮。

关于这个问题我还有一个小问题:当我使用 TabHost + ActivityGroup 时,“solo.getCurrentActivity()”是否总是返回 ActivityGroup 的嵌入式 Activity ,而不是外部 Activity ? solo 仍然可以访问外部 Activity 的元素吗?不过,在我上面的例子中,切换按钮始终是内部/嵌入式 Activity 的一部分 - 以防万一。

最佳答案

刚刚收到 robotium 开发人员的回复,这是一个将在 Robotium 1.8 中修复的问题。参见 Here

关于android - Robotium 测试失败,出现 : junit. framework.AssertionFailedError : View can not be clicked!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3911419/

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