Testfeed is the brain of optimus, it helps you in controlling your test runs

Optimus is extremely powerful yet fun to work with once you understand what to feed your tests, for a seamless automation experience. Test Feed, typically a JSON format, will let you control all your tests from a single source of truth, giving you complete control of your tests execution. Any Test Feed will contain following sections

  • Common Attributes
  • Appium Server Capabilities
  • Android or iOS Only Capabilities

Common Attributes

These attributes are set across all tests running on a common test feed.

Native App: Sets the context for your test to run on a native app or mobile web
Belongs To: Assigns the test to a particular application.
Runs On: Assigns the test to user specific device. You can choose to run your tests either on device or emulator.
Application Directory: Specifies the folder name where the application under test is placed.

Appium Server Capabilities

Optimus by default supports all the capabilities that Appium provides, which you can refer from here. Since Optimus inherently possesses immense intelligence to handle all capabilities by default without troubling you much, all it needs are a couple of capabilities.

App: Name of application to test. Optimus will look for this app under the “appDir” folder specified as part of common attributes.
Platform Name: Specifies the platform to run the application on.
Example
"testFeed":[
    {
      "belongsTo":"optimus",
      "runsOn": "any",
      "appDir": "app",
      "nativeApp":true,
      "optimusDesiredCapabilities": {
        "appiumServerCapabilities": {
          "app": "HelloOptimus.apk",
          "platformName": "Android"
        },
        "androidOnlyCapabilities": {
          "appActivity": "com.testvagrant.hellooptimus.MainActivity",
          "appPackage": "com.testvagrant.hellooptimus",
          "avdLaunchTimeout": 300000,
          "useKeystore": false
        }
      }
    }
  ]

These capabilities will be sufficient enough to run most of the tests if not all. Under which circumstances you may choose to provide additional Appium Server Capabilities.

Android only Capabilities

Optimus supports all android related capabilities as specified here. Optimus does not enforce any of these capabilities to be set for running your tests. However you are free to provide as many capabilities as you may need.

iOS only Capabilities

Optimus supports all ios related capabilities as specified here. Optimus does not enforce any of these capabilities to be set for running your tests. However you are free to provide as many capabilities as you may need.

Supported Platforms

  • Android - SDK Emulators, Genymotion Emulators and all devices
  • IOS - Simulators and Devices
Tags: android