Skip to content

ralupopa/Tests-NUnit-AltTesterDriver-For-Android

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Prerequisite

  1. Download and install .NET SDK
  2. Have a game instrumented with AltTester Unity SDK
  3. Have AltTester Desktop app installed (to be able to inspect game)
  4. Download and install ADB for Windows
  5. Enable Developers Options on mobile device more instructions here

Tests created with NUnit & AltTester-Driver for a game developed w/ Unity (TrashCat)

This repository is a test project that uses NUnit as the test library. It was generated using following command (as suggested in documentation)

dotnet new nunit

AltTester Unity SDK framework contains AltDriver class used to connect to the instrumented game developed w/ Unity. AltTester-Driver for C# is available as a nuget package. Install AltTester-Driver nuget package

dotnet add package AltTester-Driver --version 1.8.2

Setup for running on mobile device

  1. Make sure mobile device is connected via USB, execute:
adb devices
  1. On mobile device: allow USB Debugging access (RSA key fingerprint from computer)

  2. Uninstall the app from the device

adb uninstall com.Altom.TrashCat
  1. Install the app on the device
adb install TrashCat.apk

Run tests manually (with dotnet CLI)

  1. [Optional to do manually] Setup ADB port forwarding (this can also be done in code in Setup and Teardown)
adb forward --remove-all
adb forward tcp:13000 tcp:13000
  1. Launch game
adb shell am start -n com.Altom.TrashCat/com.unity3d.player.UnityPlayerActivity
  1. From TrashCat.Tests execute all tests:
dotnet test
  1. Kill app
adb shell am force-stop com.Altom.TrashCat

! Make sure to have the AltTester Desktop App closed, otherwise the test won't be able to connect to proper port.

Run all tests from a specific class / file

dotnet test --filter <test_class_name>

Run only one test from a class

dotnet test --filter <test_class_name>.<test_name>

Workaround for being able to use SDK 1.8.2 installed as package in project:

  • get altwebsocket-sharp.dll from here and put in project's bin\Debug\net7.0

this was necessary due to currently open issue