Skip to content

Terra Toolkit is a utility module used to facilitate independent development of Terra projects. This toolkit is designed to help support nightwatch testing by providing configuration, as well as helper functions that can be used during test runs of npm packages.

License

Notifications You must be signed in to change notification settings

mrw100/terra-toolkit

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Terra Toolkit

NPM version License Build Status Dependencies status devDependencies status

Terra Toolkit is a utility module used to facilitate independent development of Terra projects. This toolkit provides build scripts, configurations, and Webdriver Services needed to serve assets, compile webpack, and run webdriver.io tests to streamline development of npm packages. terra-core, terra-clinical, and terra-framework are a few examples repos which are utilizing the utilities offered in this package, while terra-dev-site is a repo that extends the configurations offered by toolkit.

Getting Started

  • Install with npm: npm install terra-toolkit --save-dev

Terra Toolkit uses Docker to setup, run, and tear down selenium to ensure a consistent testing environment locally and in continuous integration build systems. To use Terra Toolkit for webdriver testing, you must install docker on your machine.

Aggregate Translations Tool

Terra components provide internationalization and localization support via react-intl. To use the component translations, the aggregate-translations pre-build tool will aggregate the translations, and create the intl loader and translation loader files that are configured for the specified locales.

See the Aggregating Translations Guide to get started.

Serve Options

Terra Toolkit offers two ways to serve your client side application, serve and serve-static. Serve provides a hot-reloading, development only option via webpack-dev-server, while serve-static is a non-hot-reloading express server. Serve-static supports IE10 and is used in webdriver testing.

See the Serve Guide to get started.

Webdriver.io Utility

Webdriver.io is a framework for writing webdriver powered tests to validate functionality in browsers. The Webdriver.io framework provides services for setting up a selenium server, starting webpack and static servers, running accessibility and visual regression testing, and more.

See the Webdriver.io Utility Developer's Guide to get started.

Webpack Configuration

Webpack is a module bundler used to compile modules with dependencies and generate static assets. Webpack is a very powerful tool that is highly configurable and Terra components rely on specific polyfills, webpack loaders and plugins to render correctly. Terra provides a default webpack configuration which we recommend you extend to meet your needs. By using this default configuration, we will manage webpack dependencies and set up translation aggregation.

See the Webpack Configuration Guide to get started.

Versioning

Terra-toolkit is considered to be stable and will follow SemVer for versioning.

  1. MAJOR versions represent breaking changes
  2. MINOR versions represent added functionality in a backwards-compatible manner
  3. PATCH versions represent backwards-compatible bug fixes

Consult the component CHANGELOGs, related issues, and PRs for more information.

Contributing

Please read through our contributing guidelines. Included are directions for issue reporting and pull requests.

LICENSE

Copyright 2017 - 2019 Cerner Innovation, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

Terra Toolkit is a utility module used to facilitate independent development of Terra projects. This toolkit is designed to help support nightwatch testing by providing configuration, as well as helper functions that can be used during test runs of npm packages.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 98.9%
  • Other 1.1%