Can React Native apps be tested in a browser?

TestingReactjsReact NativeSimulator

Testing Problem Overview


Realizing that React Native apps are designed to be developed / tested using simulators, is it possible to use a web browser to also test an application?

Services such as https://rnplay.org/ exist, however my concern is it's powered by https://appetize.io/ it might be limited by the # of minutes per month. I'd also like to utilize free / open-source technology to accomplish this, as compared to a paid screen streaming service.

Along these lines, in order to test the app in a browser, would the app be required to use one or more libraries which allow the app to be run in both React Native and also simply React? I'd like to find an alternative to this particular approach as I'd like to code for React Native specifically.

Testing Solutions


Solution 1 - Testing

No, React Native can be tested only in mobile simulators like IOS and Android

Update: Facebook has given a beautiful starter pack for React Native.

Introducing Create React Native App

Using this, you can run the app in your mobile using expo app(https://expo.io). It syncs using QR code.

Solution 2 - Testing

Yes! That's very much possible with react-native-web. Here are a couple of related, useful resources to get started:

Solution 3 - Testing

You can use Expo Snack https://snack.expo.io/ to instantly test your code on a device (using QR code ) or in the browser. For more information, you can go thtrough this article. https://blog.expo.io/sketch-a-playground-for-react-native-16b2401f44a2

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Questionsean2078View Question on Stackoverflow
Solution 1 - TestingThanigainathanView Answer on Stackoverflow
Solution 2 - TestingUmar A.View Answer on Stackoverflow
Solution 3 - TestingAnkit SinhaView Answer on Stackoverflow