Frage

Es scheint mir, dass Robotium so konzipiert wurde, dass 1 Aktivität gleichzeitig anstelle der gesamten Anwendung testet wurde.

Meine Frage ist also, wie ich eine Aktivität testet, die erwartet, dass ein Extra daran übergeben wird. Mit extra meine ich intent.putExtra("Something", object);

War es hilfreich?

Lösung

Die Methode setActivityintent (Absicht) Sollte das sein, wonach Sie suchen. Ich habe diese Methode verwendet, um eine benutzerdefinierte Absicht für den Testcase meiner Aktivität zu bieten. Verwenden Sie es einfach, nachdem Sie angerufen haben super in Ihrem Konstruktor.

Intent i = new Intent();
i.putExtra("myExtra", "anyValue");
setActivityIntent(i);

Sie müssen es nicht im Konstruktor tun, denke ich, aber Sie müssen sicherstellen, dass Sie es nennen Bevor Sie GetActivity anrufen () zum ersten Mal. GetActivity verwendet Ihre Absicht, die Aktivität zu erstellen.

Andere Tipps

Sie könnten stattdessen GetActivity () überschreiben.

@Override
public NewActivity getActivity() {
    Intent intent = new Intent();
    intent.putExtra("exampleExtra", "some data");
    setActivityIntent(intent);
    return super.getActivity();
}

Sehen Testen auf Android mit Robotium für mehr Details.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top