gpt4 book ai didi

android - 如何使用 roboelectric 或 mockito 测试处理程序消息

转载 作者:太空狗 更新时间:2023-10-29 14:20:39 25 4
gpt4 key购买 nike

我正在尝试使用包含 handler.sendMessage(msg):

的 roboelectric 和 mockito 框架测试一段代码
public void emailLogin(){
...
mHandler.sendMessage(message);
}

Handler mHandler = new Handler(new Callback() {

public boolean handleMessage(Message msg) {
System.out.println("called");
return false;
}
});

处理程序在没有正常环境的情况下也能完美运行,但是如果我为该方法编写单元测试,则处理程序是未触发。

robolectric 是否缺少 handler.sendMessage(msg)?或者我们必须单独测试处理程序?

我不想通过单元测试自行测试处理程序,我要测试的是我的函数,它包含处理程序。

最佳答案

看一看:

Robolectric.runUiThreadTasks();

当使用 RobolectricTestRunner 类运行测试时,我在 loopj Android 异步 Http 客户端库中的处理程序遇到了同样的问题,并最终使用了此处提到的类似方法: https://groups.google.com/forum/#!topic/robolectric/hbcTw3jLXys

关于android - 如何使用 roboelectric 或 mockito 测试处理程序消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17291326/

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