Developing, building, - DeveloperMarch · Developing, building, testing and deploying By @leenasn...

Post on 30-May-2020

4 views 0 download

Transcript of Developing, building, - DeveloperMarch · Developing, building, testing and deploying By @leenasn...

Developing, building, testing and deploying

By @leenasn

React Native App

Learn once, write anywhere: Build mobile apps with React

Cross Platform Native Appsusing Javascript

Design Principles

https://reactjs.org/contributing/design-principles.html

Composition of components

Single Responsibility Principle

Developer Experience

Eg: Hot Reloading

Dogfooding

Who uses React Native

React Native Community

Getting started is still difficult

● Separate Build Process for iOS and Android● Configuring Push Notifications● Managing React Native updates● Configuring Instant Updates

Common Issues

Easily build and share React Native apps

Selected set of tools

How expo works - development

How expo workshttps://docs.expo.io/versions/latest/guides/how-expo-works.html

CRNA from Facebook

https://github.com/react-community/create-react-native-app

Work with all of the Components and APIs in React Native, as well as most of the JavaScript APIs that the Expo App provides.

● No Custom Native modules● No background execution

Why not Expo

Detaching to ExpoKit

Objective-C and Java library that allows you to use the Expo platform with a native iOS/Android project.

Testing

Painless Javascript Testing

● Fast feedback● Zero Configuration● Powerful mocking● Built by Facebook● Maintained by React Native Community

https://facebook.github.io/jest/

EnzymeTesting utilities

https://github.com/airbnb/enzyme/

Jest Snapshot Testing

https://facebook.github.io/jest/docs/en/snapshot-testing.html#content

StorybookInteractive development & testing environment

https://storybook.js.org/

Visual Regression Testing for Storybook

https://loki.js.org/

Cross device Testing?

Remote Access

Appium Tests

Monkeyrunner tests

Build & Deploy

Expo Publishhttps://docs.expo.io/versions/latest/guides/publishing.html

https://fastlane.tools/

Other tools

Lottie - Animations using Adobe After Effectshttps://github.com/airbnb/lottie-react-native/

Expo Snack https://snack.expo.io/

Detox https://github.com/wix/detox

https://applitools.com/

Electrode Native: The Platform For Integrating React Native Into Your Apps

https://openstf.io/

Summary

Expo CRNA [Create React Native App]

Building

Testing

Cross Device Testing https://www.browserstack.com/test-on-the-right-mobile-devices

Testing Pyramid Just Say No to More End-to-End Tests

https://fastlane.tools/Building and Deploying

Error monitoring

Optimise for happiness

Leena S N@leenasn / leena.sn@multunus.com

https://medium.com/@leenasnhttps://medium.com/continuousdelivery

@greatindiandev bit.ly/gidslinkedin www.developersummit.com

Conference and Deep Dive Sessions

April 24-28, IISc Bangalore

TM

2018

Register early and get the best discounts!