Firebase Test Lab

Part 1: Case of study using Adroid and Ionic Framwork
Firebase Test Lab

Introduction
- Firebase Test Lab is a cloud-based app-testing infrastructure.
- ... see the results including logs, videos, and screenshots...
Test Lab exercises your app on devices installed and running in a Google data center, so you can find issues that only occur on specific devices and configurations.
Firebase Test Lab

Introduction









Firebase Test Lab

Introduction

Firebase Test Lab

Introduction
Strategy: Add a new step in our development process, so the QA leader can recieve more information about executions of the application on target devices.
Firebase Test Lab

Introduction


- Espresso
- UI Automator 2.0
- Robo test
- XCTest
Android
iOS
Firebase Test Lab

Introduction


- Espresso
- UI Automator 2.0
- Robo test
Android


Instrumentation test
simulating user activities
Firebase Test Lab

Espresso
The Espresso testing framework, provided by AndroidX Test, provides APIs for writing UI tests to simulate user interactions within a single target app.
Test WebViews with Espresso Web
Espresso Web allows you to test WebView components contained within an activity. It uses the WebDriver API to inspect and control the behavior of a WebView.
Firebase Test Lab

Espresso
@Large
@RunWith(AndroidJUnit4.class)
public class SimpleIntentTest {
private static final String MESSAGE = "This is a test";
private static final String PACKAGE_NAME = "com.example.myfirstapp";
/* Instantiate an IntentsTestRule object. */
@Rule
public IntentsTestRule<MainActivity> intentsRule =
new IntentsTestRule<>(MainActivity.class);
@Test
public void verifyMessageSentToMessageActivity() {
// Types a message into a EditText element.
onView(withId(R.id.edit_message))
.perform(typeText(MESSAGE), closeSoftKeyboard());
// Clicks a button to send the message to another
// activity through an explicit intent.
onView(withId(R.id.send_message)).perform(click());
// Verifies that the DisplayMessageActivity received an intent
// with the correct package name and message.
intended(allOf(
hasComponent(hasShortClassName(".DisplayMessageActivity")),
toPackage(PACKAGE_NAME),
hasExtra(MainActivity.EXTRA_MESSAGE, MESSAGE)));
}
}
Firebase Test Lab

Robo Test
Firebase Test Lab
By Juan Navarro
Firebase Test Lab
- 209