Skip to main content

Testing your App

Testing practices

Before you submit your app, test it to make sure that its working correctly. Once you submitted your app, the Overwolf team will review and test it. This applied to both first time submissions and app updates.

Consistent UID

Ensure that the Product Name (or Name) and Author in package.json (inside app.asar) are consistent across all versions.

Devtools for Electron apps

If your app window was created using webPreferences: {devTools: true}:

  • Use ctrl+Shift+I to enter the developer tools window..

If your app is launched from an .exe file:

  • Run your app with the --remote-debugging-port=9222.
  • Open a browser window and navigate to http://localhost:9222/ to see the debugging window.

If you have scripts for building and debugging your app make sure they contain:

  • "start": "ow-electron \--remote-debugging-port=9222"

Windows

Resolution compatibility

  1. Before you test your app, set the DPI to 100% and window resolution to 1920 x 1080.

  2. Change your screen resolution to the following settings and make sure that the app window stays within the borders of your screen:

    • 1366 x 720 - 100 DPI
    • 1366 x 768 - 100 DPI
    • 1920 X 1080 - 125 DPI
    • 2560 x 1440 - 100 DPI
    • 3840 X 2160 - 150 DPI

Window states

Use the following tests with your app to find compatibility issues with different window states:

  1. Launch the game your app supports, then test the app when the game is in full screen. Make sure everything is located where you want it.
  2. Change to windowed mode and make sure that everything is where you want it.

Window behavior when "out of focus"

Overwolf only displays overlays in-game when the game is in focus. That means that whenever your game is alt+tab or minimized, no app window should appear.

To test this behavior:

  1. Launch the game your app supports. Make sure that the app launched correctly.
  2. Use Alt + Tab to get out of the game, and make sure that your app window does not show on desktop.
  3. Alt+tab back to the game, the app should work normally.

Overlay

In-game behavior

Test preconditions: The user is running the game your app supports.

  1. Open the app window with the designated hotkey and make sure the overlay appears properly.
  2. Test general app functionality in-game and ensure your features work.
  3. Press the app window in spots where clicks going through to the game would have an effect. For example, click an app button which covers an in-game menu and make sure your clicks only affect the app layer and never that menu.

Hotkeys

General functionality

  1. Use the hotkey to launch the app and ensure it launches properly.

  2. Use the hotkey again to minimize your app.

  3. Change your app's designated hotkey and make sure the change appears in the app's settings.

  4. Use the changed hotkey to launch the app and ensure it launches properly.

  5. Use the changed hotkey again to minimize your app.

  6. Allow the user to change the hotkey combination from inside your app’s settings panel by automatically directing the user to the settings page. Make sure that the new hotkey is updated automatically in your app without needing to re-launch the app. For more information about hotkeys, see Hotkeys.

Test mid-game installation

Preconditions: Uninstall your app to perform the following test.

  1. While in-game, install the app.

  2. Use hotkey to launch the app and verify that it successfully opens.

  3. Use hotkey again to minimize the app.

  4. Change the designated hotkey and use it again to launch the app.

  5. Used the changed hotkey again to minimize the app.

  6. Whenever a user changes their hotkey, verify that your app changes both functionality and UI.

Desktop

Desktop app behavior

  1. Launch your app while in desktop, verify that the app window appears about 10 seconds or less. It is acceptable that the app displays a loader until it's ready for use.
  2. Test your app's desktop functionality and features.
  3. Close the app. Verify that all windows are closed upon exit as well as all app related processes.
  4. Relaunch the app, and verify all functionality is working correctly.

Game specific apps

If your app supports a specific game only, make sure it runs when you launch that game and that it doesn't launch for other non-supported games.

Performance

Memory & CPU Usage

Preconditions: Open both the Overwolf task manager (if applicable) and the Windows task manager.

  1. Use your app's basic functionality, ensure it doesn't hang, lag or stops responding.
  2. Use the app while checking the Overwolf task manager (if applicable). App memory usage should rise and fall. If it doesn't drop back down after rising, the app might have a memory leak.
  3. Click the performance tab in Windows Task manager and watch for spikes in CPU, memory or network usage while using your app.

Internet access

  1. Disconnect from the internet and verify your app still launches normally.
  2. When offline, make sure your app displays a check your internet connection type message.
  3. Make users aware that the requires an internet connection to function. It should be clarified for users in the app's window.
  4. Use the follow methods to detect if you app is offline:

Ads

Follow the following steps to enable ads in your app:

  1. Open the app, then open the developer's tools window.
  2. Press the Console tab, then paste the test ad command into the console, and press Enter.
  3. Press F5 to refresh the window.
  4. Ads should appear in your app in the locations you designated.

Testing other ads

To test high impact ads:

  1. If your app window was created using webPreferences: {devTools: true}

    1. Use ctrl+Shift+I to enter the console.
    2. Press the Console tab, then paste localStorage.owAdTestAd = true into the console, and press Enter.
    3. Press F5 to refresh the app window.
    4. Ads should appear in your app in the locations you designated.
  2. If you created your own .exe:

    1. Run your app with the --remote-debugging-port=9222 and the --test-ad flags.
    2. Open a browser window and navigate to http://localhost:9222/ to see the debugging console.

Testing Ad visibility

  1. Launch your app.
  2. Go over your app screens and look for the ad containers. Verify that the ads appear properly.

Ad click functionality

  1. Launch your app with ads enabled.
  2. Click on any element that is hiding ads. Then make sure the ads do not open and that your element functions as intended.
  3. Click on an ad, it should open the ad's link in a new browser window.
  4. Click on the ad 5 times, make sure five different browsers windows are launched without crashing Overwolf or harming your app's performance.

Ensure ads are not hidden

  1. Open the app, then open the developer tools window.
  2. Press the Console tab, and verify that no ad processes are visible if no ads are displayed on screen.

Ads remove and refresh

Ads should close when your app window is minimized.

  1. Open the apps developer tools window.
  2. Launch your app, navigate to a screen where ads are presented.
  3. Close the app using a hotkey or manually.
  4. In the console, check to see that no ad processes are found in the localhost.

Pre-Release

App's exe file doesn't warn for any viruses

Before sending any opk file for approval, check that it is virus free. Use virustotal.com to check for potential issues. Any OPK which virustotal has warnings for will not be tested.