问题描述
如何对Snackbar显示并且操作按钮启动启动单元意图进行单元测试?
Snackbar.makeText(context, "message", Snackbar.LENGTH_LONG).show();"
1楼
您可以通过多种方式执行此操作。 哪一种最佳取决于您的偏好,架构和使用的类型。
一种方法是使用测试替身(间谍)来跟踪show()方法是否已被调用。 然后,在给出某些特定输入的情况下,您对此进行断言。
另一种方法是针对某种isVisible()进行断言。 此方法目前可能存在或可能不存在。 如果您控制有问题的类型,则可以考虑添加它(但是请注意添加太多的公共方法(仅用于查询对象的状态))。
编辑:间谍测试双的一些示例代码:
public class FakeSnackbar extends Snackbar {
public boolean Shown;
@Override
public void show() {
Shown = true;
}
}
我不特别知道在android编程的上下文中的意图是什么,但是可能会使用类似的方法。