Skip to content

Latest commit

 

History

History
101 lines (86 loc) · 2.99 KB

FEATURES.md

File metadata and controls

101 lines (86 loc) · 2.99 KB

NativeScript Tooling Tests

Framework Features

Core

  • No dependencies on internal network shares
  • Execute command to return not only output, but also exit code, pid and others.
  • Multiple simultaneous emulators and simulators
    • FindByText
    • Compare screens (pixel-by-pixel)
    • Click on element
    • Use emulator snapshots
  • Real iOS devices
    • Find by text
    • Compare screens
    • Click on element
  • Improve Test Settings
    • Split on multiple sub-classes
    • Comply on 100% with ns-ci-build-tool variables
  • Logger and Reporting
    • No more print statements
    • More clear logs
    • Respect logging levels (be able to configure logger verbosity)
    • Generate HTML report with screenshots and links to artifacts on test fail (may be Allure)
  • Run tests via nose command
  • Base TnsTest
  • Utils wrapping tools we need
    • Xcode
    • Gradle
    • Java
    • Git
    • Npm
    • Chrome browser
  • Image utils
    • Get pixels by color
    • Get main color
    • OCR
    • Picture comparison
    • Picture matching by template matching
  • Wait helper
    • Wait until function returns true or timeout reached
  • TestContext to hold
    • Started pids
    • App under test (to be able to backup it on test fail)
    • Started emulators, simulators or device ids (to be able to take picture on fail)
  • Tests for core itself
  • Force linter rules
  • Docs
    • Docstring everywhere
    • Accurate readme and other mds.

Data

  • Data for apps and templates (including change sets)

Products

  • Wrapper around tns commands
  • TnsAsserts util to verify tns command do what is supposed to do.

Tests

{N} CLI Functional Tests

  • Write all the tests

{N} CLI Performance Tests

Acceptance Criteria:

  • Measure following things on HelloWorldJS, HelloWorldNG and MasterDetailsNG templates:
  • Project create
  • Platform add (both platforms)
  • Initial and incremental prepare (both platforms)
  • Initial and incremental build (both platforms)
  • Initial and incremental build (both platforms)
  • Time to apply JS/TS/CSS/XML/HTML (both platforms)

Notes: Build, prepare and sync tests should be done with and without bundle for (at lest) following templates:

  • HelloWorldJS
  • HelloWorldNG
  • HelloWorldVue
  • MasterDetailsNG

Code Sharing Story Tests

  • Write all the tests

Monitor Live Apps & Templates

We need to make sure we always work out of the box for end users.

Acceptance Criteria:

  • User should be able to git clone and run all popular app.

  • User should be able to create app from any template and run it without any modifications.

  • Run should also pass with bundle if webpack is available in the app/template.

  • JS SDK Samples

  • NG SDK Samples

  • Groceries

  • QSF

  • Hello World Templates

  • SideKick Templates (including blank and health)

  • Vue Templates