What is App Interact?

App Interact is an app testing product that you can use to test mobile apps and mobile websites on real, physical phones that are hosted by App Interact. App Interact facilitates manual testing of apps.

App Interact helps you in delivering a great app experience by monitoring your own and 3rd party API calls to identify slow servers, SDKs and optimizing client server interactions, tracking memory leaks, unoptimized assets such as images, battery consumption, and janky frames on your app.

To use App Interact, the first step is to get the sign-in credentials. Use the sign-in credentials provided to you by MOZARK team to get started. In case you need credentials, write to us at enquiry@mozark.ai.

Next Section: Getting Started with Manual Testing

Getting Started with Manual Testing

This walkthrough shows you how to use App Interact to test a native Android or iOS app or mobile website. You can use the App Interact console to select devices, upload a build in the form of an .apk or an .ipa or choose a default one, and then change the settings of a device, view logs. You can watch the tutorial on how to run a manual test using App Interact:

Sign in to the Console

You can use the App Interact console to select devices, upload build, change device settings, remotely debug, navigate through folders available in the console, view screenshots, logs. You can learn about devices, builds, device settings, screenshots, logs later in this walkthrough.

Step 01: Sign in to App Interact Console at http://demo-app-interact.mozark.ai/

You will see a page as shown in Figure 01. Provide your user id, password and click on login to sign into App Interact Console successfully.

Figure 01: Sign into App Interact Console

Step 02: Signed in App Interact Console

After you successfully sign into App Interact Console, you will see the page given in Figure 02.

Figure 02: Signed in App Interact Console

Once you are signed into the App Interact Console, you can select devices, upload or select default or existing builds, change device settings, view screenshots and logs.

Select Devices

To test a mobile app or a mobile website, you must select device by clicking on ‘Use’ before a device of your choice as shown in Figure 03.

Figure 03: Click on ‘Use’ to select a device of your choice

Device Screen

Now that you have selected a device, the next step is to navigate through the selected device by clicking on the buttons in the device screen as given in Figure 04. Once you are done with manual testing on a device, do not forget to click on X before signing out.

Figure 04: Device Screen

Upload Builds

Now that you have selected a device and navigated through it, the next step is to upload a build from your system as shown in Figure 05 or by installing the app from Play Store or App Store.

Figure 05: Upload Builds

Configure your Manual Tests

You can configure your manual tests through device settings, advanced inputs, maintenance, file explorer, switching browsers, shell scripting, remote debugging, connecting App/Play Store accounts, port forwarding as shown in Figures 6 and 7.

Figure 06: Configure your manual tests – Navigation, Shell Scripting, Remote Debugging

Figure 07: Configure your manual tests – File Explorer

1. Navigation – ‘Navigation’ helps in switching the browser to manually test your mobile websites as given in Figure 06.

2. Shell Command – ‘Shell Command’ can execute shell command on the test device so that you can control your test device from your computer, copy files back and forth, run shell commands as shown in Figure 06.

3. Connect with App/Play Store – App Interact gives an option to connect with ‘App/Play Store’ by entering username and password so that the desired builds can be installed easily as given in Figure 07.

4. Advanced Input – ‘Advanced Input’ enables you to change the volume, media and keyboard configurations of your test devices as shown in Figure 07.

5. Maintenance – You can restart your test device by going to ‘Maintenance’ in Figure 07.

6. Port Forwarding – ‘Port Forwarding’ enables connections with a destination server of your choice as given in Figure 07.

7. File Explorer – With ‘File Explorer’, you can glance through different device folders in the test device as shown in Figure 07.

Take Screenshots

You can take screenshots for your manual tests as shown in Figure 08.

Figure 08: Take Screenshots

Next Section: Remote Debugging

Remote Debugging

‘Remote Debugging’ connects remotely running application with your development environment using ADB Connect with public IP and port of the mobile device as given in Figure 09. Here is a tutorial that demonstrates on how to use devices with your local IDE: View on Microsoft Sharepoint

Figure 09: Remote Debugging

Before starting with remote debugging, you need to have installed the Android SDK Tools to be able to use device locally.

To be able to debug the remote device on a local machine, you need to do the following:

  1. On App Interact, after selecting a device, go to the Dashboard tab -> Remote Debug panel.
  2. There will be a text field with content like adb connect …. Click and copy that text.
  3. Paste it and run it in command line.

This will connect the device locally. You can check by going to command line and typing: adb devices

For ADB connect, the user’s ADB key is authenticated from the UI one time and to use the device over ADB you need to keep the Interact portal control of the device on.

Tools Steps to ensure Remote Debugging
Android Studio You should be able to debug the device, however the IDE still has some bugs when using the debugger.
Eclipse You should be able to debug the device as-is.
Chrome On the device

On Chrome 32 and newer, you don’t need to do anything on the device.

On Chrome 32 and earlier, you need to enable USB remote debugging inside ‘Chrome Settings’:

  • Open Chrome
  • Go to Settings -> Developer Tools
  • Enable ‘USB debugging’

On your desktop browser

  • Open a new tab
  • Go to
  • Chrome://inspect/#devices
  • in the address bar.
  • Enable ‘Discover USB devices’ by clicking the checkbox.

It should show a list of pages opened inside the Chrome browser of the Device and WebViews. Now you can debug any page by clicking on ‘Inspect’.

Opera On the device

  • Open Opera
  • Write opera:debug in the address bar

On the command line

Go to command line, and type: adb forward tcp:9222 localabstract:opera_devtools_remote

On your desktop browser

You can use Opera, Chrome or any other Chromium based browser.

  • Open a new tab
  • Go to
  • localhost:9222
  • in the address bar.

It should show a list of inspectable tabs. Now you can debug any page.

Firefox On the device

  • Open Firefox
  • Go to Settings -> Developer tools.
  • Enable ‘Remote debugging’.

On the command line

Go to command line and write: adb forward tcp:6000 tcp:6000

If you are using Firefox OS, then write: adb forward tcp:6000 localfilesystem:/data/local/debugger-socket

On your desktop browser

You can use Opera, Chrome or any other Chromium based browser.

  • On the Web Developer menu, select ‘Connect’
  • This will go to Chrome://browser/content/devtools/connect.xhtml
  • Click the ‘Connect’ button
  • On the device it will ask you to accept an ‘Incoming Connection’, click ‘OK’

This should show a list of pages opened inside the Firefox browser of the Device and WebViews.

Next Section: Capture, View and Download Logs

Capture, View and Download Logs

You can capture, view, and download logs for your manual tests as shown in Figure 10. Logs can be captured by clicking on ‘Get’, logs can be viewed simultaneously by applying filters such as ‘Verbose’, ‘Debug’, ‘Info’, ‘Warn’, ‘Error’, ‘Fatal’ and logs can be downloaded by clicking ‘Save Logs’. You can read more about these filters here.

Figure 10: Capture, View and Download Logs

Next Section: API Testing

API Testing

In this section, we will see on how to perform API Testing using App Interact. App Interact supports API Testing through API Inspection and API Interception.

API Inspection

API Inspection checks the API request-response details for any call made from the client application to debug issues in functionality. You can use filters to easily discover root causes like HTTP errors, high wait time, high handshake times, and non-optimized asset size and formats.

With reference to Figure 11, you can perform API Inspection as follows:

  • Click on ‘Start’ to record the calls made during your manual tests.
  • Go to ‘Request’, ‘Response’, ‘Details’ section to know the HTTP errors, high wait time, high handshake times and about non-optimized assets.

Figure 11: API Inspection

API Interception

API Interception helps in making the changes in either the request or the response, and test the UI impact of modifying the APIs, without changing a single line of code in the backend and if the modification is resolving the bug if there is any.

Watch tutorial on how to intercept APIs using App Interact: View on Loom

You can intercept APIs using App Interact by following the below steps:

  • Click on ‘Start’ to record the calls made during your manual tests and then go to ‘Start’ tab as given In Figure 12.

Figure 12: API Interception – Give command in ‘Pause’ field

  • Go to ‘Pause’ icon, intercept by keyword, the keyword can be in URL, request body, response body, etc as shown in Figure 13.

Figure 13:API Interception

  • Click on the edit icon and edit URL or request/response body as per your requirement and click ‘Resume’ highlighted in Figure 14.

Figure 14:API Interception – ‘Edit’ and ‘Resume’

Next Section: Session Analysis

Session Analysis

In this section, we will see on how to perform session analysis using App Interact. App Interact supports session analysis by recording the session and capturing data such as API request response details, CPU utilization, battery consumption, memory used, etc.

To start the session analysis, click on ‘Session’ tab and ‘Start’ button given in Figure a.

Figure a: Session tab and Start button

Select the app under test from the dropdown as given in Figure b.

Figure b: Dropdown

When the application is launched and used, MOZARK application is capturing data such as API request response details, CPU utilizations, battery consumption, memory used, janky frames. Stop the session recording by clicking on ‘End’ button shown in Figure c.

Figure c: End button

Release the device and go to session tab as shown in Figure d.

Figure d: Session tab

See, download by clicking on ‘Download’ the recorded session as shown in Figure e and open the files as shown in Figure f using third party application.

Figure e: See and download the recorded session

Figure f: Open the files

Next Section: Troubleshooting

Troubleshooting

In this section, you will find error messages and procedures to help you fix common problems with App Interact.

If a device is to be released, then click on X in the device screen as shown in Figure 04 or refresh the page or sign out and sign in. If you are not able to release a device then contact MOZARK by dropping an email to enquiry@mozark.ai

If a device is disconnected, then contact MOZARK by dropping an email to enquiry@mozark.ai

If no screen is rendered, then contact MOZARK by dropping an email to enquiry@mozark.ai

If failed to authenticate to host:port, then run adb devices to check if device is available

If failed to connect to host:port, then ensure that device is taken in use in App Interact

If connected to host:port but not connected to the device, then ensure that you have not used a different login id to login in to App Interact previously. Please contact MOZARK if you have changed your login id.

If device-serial offline is shown after running command adb devices, then ensure that the device is taken in use in App Interact.

If device-serial unauthorized is shown after running command adb devices, then ”Stop Using” the device and take the device under control again. Copy the adb connect command for the device, paste the command in the terminal and accept the fingerprint in STF.

Next Section: Limits

Limits

The following list describes current App Interact limits:

  • The maximum file size of an app that you can upload is 4GB.
  • There is no limit to the number of apps that you can upload to test.
  • You can retain screenshots for one month.
  • You can retain device performance details for one month.

Next Section: Document History

Document History

S.No. Date Version No.
1 Feb 01, 2021 1.0

Next Section: Resources

Resources

This section contains links to product video tutorials that can help you in getting started with App Interact.

Product Videos [YouTube Channel]

  1. How to run a manual test?

  1. How to use devices with your local IDE? View on Microsoft Sharepoint
  2. How to intercept APIs? View on Loom

Next Section: Support

Support

For further assistance, you can reach out to enquiry@mozark.ai.