Wie wird die erwartete Absicht überprüft, die gesendet wurde, ohne dass tatsächlich eine Aktivität in Espresso gestartet wurde?

Ich habe einen UI-Test, der auf eine Schaltfläche klickt und dann eine neue Aktivität in seinem onClickListener startet. Der Test prüft, ob die erwartete Absicht gesendet wurde oder nicht.

Mein Problem ist, ich möchte testen, ob die erwartete Absicht gesendet wirdohne die Aktivität tatsächlich zu starten. Weil ich herausgefunden habe, dass eine neue Aktivität ihren Zustand initialisiert und nachfolgende Tests abblättern lässt.

Ich weiß, es gibt zweiEspresso Intents api, welche sind<a href="https://developer.android.com/reference/android/support/test/espresso/intent/Intents.html#intended(org.hamcrest.Matcher%3Candroid.content.Intent%3E)" rel="nofollow">intended</a> und<a href="https://developer.android.com/reference/android/support/test/espresso/intent/Intents.html#intending(org.hamcrest.Matcher%3Candroid.content.Intent%3E)" rel="nofollow">intending</a>, aber beide erfüllen meine Bedürfnisse nicht.intended api startet tatsächlich die Zielaktivität undintending api startet die Aktivität nicht, ruft aber @ aonActivityResultcallback was ich auch nicht will. Weil ich Angst habe, dass der Code inonActivityResult kann eine andere Schuppigkeit verursachen. Ebenfallsintending gibt nicht an, ob eine übereinstimmende Absicht gesendet wurde, sondern ruft einfach @ aonActivityResult Rückruf bei gefundener Matching Intent, dh ich muss prüfen, obonActivityResult heißt oder nicht!

ibt es einen sauberen Weg, um das zu erreichen, was ich wil

Antworten auf die Frage(6)

Ihre Antwort auf die Frage