Android:如何确定等待线程?
想要为 android 库项目创建一个单元测试。我需要测试给定线程是否正在等待(调用了 synchronized object.wait())。可以确定吗?
Want to create a unit test for android library project. I need to test if the given thread is waiting (synchronized object.wait() was called) or not. Is it possible to determine it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
编写单元测试以查看方法是否被调用的常见方法是创建一个模拟对象,该对象重写要检查的方法并在调用时设置标志。例如:
用您的类替换此模拟,然后检查
assertTrue(mockClass.mWaitWasCalled)
给定一个随机对象,无法判断线程是否正在等待它。
A common way to write unit tests to see if a method is called is to create a mock object that overrides the method to check and sets a flag when it is called. For example:
Substitute the use of your class for this mock and then check that
assertTrue(mockClass.mWaitWasCalled)
Given a random object, there's no way to tell if a thread is waiting on it.