Skip to content

mmusil/fh-template-art

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

98 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Client Apps Acceptance & Regression Tests

This tool helps you automate E2E testing of client apps. Appium is used to test mobile applications.

For every client app it tests it will:

  • try to find suitable project (one with name starting with prefix specified in config/common.json and with template_id matching client app), if such a project does not exist it will try to create it
  • try to find running cloud app in the project, if it is not running it will try to deploy it
  • prepares connection between cloud and client app
  • prepares credentials bundle if needed (again the tool tries to find suitable one before it attempts to create new one)
  • for push starter apps:
    • changeBundleId of the app to one specified in config/credentials.json (iOS specific)
    • enables push for the app
  • for SAML apps:
    • prepares SAML service in studio
    • associates the service with the project
    • sets all env variables needed
    • configures SAML server so that it accepts newly created service as SP
  • build the application
  • run tests

Prerequisites

  • nvm - fhc requires node version: >=0.10 <= 4.4, Appium requires node version >=6
  • Appium
  • make sure to run this tool with node version >=0.10 <= 4.4
  • iOS and Android physical devices connected to your computer

For iOS:

  • Mac
  • Xcode
  • certificates, keys, provisioning profiles in fixtures folder
  • correct values in config/credentials.json

For iOS push testing:

  • Apple Developer Program account

For SAML testing:

Running the tests

  • start appium in separate console
  • npm install
  • add correct values to config/appium.js
  • configure config/common.js
    • npm run setup common or npm run setup common -- -h will show you help
    • You need to add -- to send arguments directly to the setup util
  • npm start

Running specific tests

To specify which client apps to test, use npm run setup test before npm start.

Troubleshooting

Error during "before" phase

As creation of projects and deployment of apps using fh-fhc is not very stable, it can fail. Tool tries to reuse existing projects. If it won't find any it will try to create it. With retries option in config/common.json you can specify how many times it should try to create project / deploy app. Another option is to create the projects (and deploy cloud apps) manually in studio. Just give it a name with prefix you've set in config/common.json.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published