使用Espresso来存储在测试活动的onCreate期间启动的Intents

时间:2017-03-19 15:18:08

标签: java android testing android-activity android-espresso

我正在测试在onCreate()期间启动另一项活动的活动。第二个活动以startActivityForResult()开始,然后主要活动等待onActivityResult()

我正在尝试使用Espresso对此进行测试,尝试使用intending()存根第二个活动,并使用intended()验证它是否已发生。

虽然espresso-intents的设计不适用于onCreate()方法(see the warning in the last paragraphs here)内启动的意图。

有没有人设法在onCreate()内创建一个Intent,如果是,怎么做?

1 个答案:

答案 0 :(得分:4)

我能够通过使用以下Kotlin代码让自己工作:

def split_if_then_else(str):
    if check_if_if_in_string_function(str)
        if_clause, then_clause, else_clause = split_str_core_function(str)
        then_clause = split_if_then_else(str)
        return [if_clause, then_clause, else_clause]
    else:
        return str

一般的想法是,由于生命周期事件发生在beforeActivityLaunched和afterActivityLaunched之间,因此您需要在那里设置打算。也就是说,这不可能进行预期的测试。