首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何自动化测试 React Native 项目 (上篇) - 核心思想与E2E自动化

随着开发模式的逐渐成熟,对RN项目的自动化测试不断探索慢慢完善, 最终选择了 Detox (by Wix) 做 E2E 自动化测试, Jest (FaceBook) + Enzyme (Airbnb...在这篇文章我会介绍一下我对 React Native 项目自动化测试的核心想法以及自动化测试 E2E 部分的具体实现。... 如何自动化测试 React Native 项目 (下篇) 中会详细介绍单元测试的具体实现方法。... React Native 传统的黑盒测试框架会遇到更多的问题, 因为RN有两个 thread 控制 App 的渲染(js 线程和 native 线程),会更难控制 App 的行为。...此外 Detox React Native 的js线程里也实现了类似的技术来得知JS是否执行完毕。 Detox测试脚本有点是写起来直观,执行起来非常的稳定可靠和快速。

3.6K32

我不认为Flutter比React Native

它提供非常出色的部件调试、分析与检查工具,内置的端到端测试功能也比 React NativeDetox 好很多。...当然,情况也逐渐改善。微软的几位大佬就在之前的访谈讨论过 React Native 工具与开发者体验的改进思路。 此外,Expo 也确实极大改善了 React Native 的开发者体验。...使用 Expo 服务,大家不仅能够实现原版 React Native 的一切功能,还将获得更好的升级体验与集成工具运行效果。...如果不打算使用自定义本机代码,Expo Go 则是一种无需编译即可与他人快速共享 build 的绝佳方式。总之,如果你正在使用 React Native,千万别跟 Expo 失之交臂!...项目核心团队一直与微软开发者各个方面上开展合作,微软一方还使用 React Native 重写了许多应用程序,并为其构建了大量工具和库。

2.4K20
您找到你想要的搜索结果了吗?
是的
没有找到

如何在React Native添加自定义字体

在这篇指南中,我们将探索使用 Google Fonts React Native 应用添加自定义字体的方法。...要启动React Native CLI项目,请在终端运行以下命令: npx react-native@latest init CustomFontCLI CustomFontCLI 是我们的项目文件夹的名称...我们的模拟器中看看这是什么样子: 使用自定义字体 假设你正在构建一个个人的 React Native 项目,并且你得到了一些自定义字体,这些字体并不在 Expo 支持的 Google 字体库。...React Native使用自定义字体时常见的陷阱 React Native使用自定义字体,你可能会遇到一些缺点: 字体族名称不匹配:如前文所述,确保字体族名称一致性至关重要。...性能影响:React Native应用程序添加自定义字体,请注意它们的文件大小(以kb/mb为单位)。大型字体文件可能会显著增加应用程序的加载时间,特别是加载自定义字体

31310

React Native推送通知:完整的操作指南

这里有一个图表,简化了通知服务如何与设备进行通信: 当涉及到React Native设置推送通知,有几种设置方式: 原生平台特定的通知服务(FCM/APNS) Expo推送通知服务和其他云服务 像...,并启动React Native开发服务器: yarn install yarn start 上述命令安装依赖项并启动Expo开发服务器,因此你可以通过Android或iOS上使用Expo应用来测试你的应用程序... React Native 处理接收到的通知 要处理接收到的通知,我们首先需要有一个事件监听器,每当用户点击通知都会被调用。...让我们看看这些问题的原因以及如何解决它们: 我无法React Native 应用运行 Expo 通知:这是因为 Expo 通知库依赖于其他 Expo 库。...要解决这个问题,请转到 Expo 通知安装文档并遵循设置步骤。 Notifee 无法 Expo 项目运行:不幸的是,截至撰写本文,这仍然是一个持续存在的问题。

63610

快速创建React Native App

本文向大家分享如何快速构建React Native App以及使用快速构建方案可能存在的一些问题及解决方案。...运行React Native应用 想要将上述创建的aa运行起来,你需要下载安装Exponent。 为了方便大家下载使用,我已将Exponent上传到网盘,供大家下载使用。...编辑App 经过上述的步骤,快速开发React Native App的环境就已经搭建好了,小伙伴门是不是迫不及待的想修改一下APP来查看运行效果了呢,接下来就可以编辑App.js来Expo上查看运行效果哦...问题分析: 通过create-react-native-app命令创建一个React Native项目的时候,出现这个问题的原因是npm 5的一个bug所致@npm@5 known issue tracking...如果,大家开发原生模块遇到问题可以本文的下方进行留言,我看到了后会及时回复的哦。 另外也可以关注我的新浪微博,或者关注我的Github来获取更多有关React Native开发的技术干货。

2.3K51

快速创建React Native App

本文向大家分享如何快速构建React Native App以及使用快速构建方案可能存在的一些问题及解决方案。...运行React Native应用 想要将上述创建的aa运行起来,你需要下载安装Exponent。 为了方便大家下载使用,我已将Exponent上传到网盘,供大家下载使用。...编辑App 经过上述的步骤,快速开发React Native App的环境就已经搭建好了,小伙伴门是不是迫不及待的想修改一下APP来查看运行效果了呢,接下来就可以编辑App.js来Expo上查看运行效果哦...问题分析: 通过create-react-native-app命令创建一个React Native项目的时候,出现这个问题的原因是npm 5的一个bug所致@npm@5 known issue tracking...如果,大家开发原生模块遇到问题可以本文的下方进行留言,我看到了后会及时回复的哦。 另外也可以关注我的新浪微博,或者关注我的Github来获取更多有关React Native开发的技术干货。

2.5K10

最新React Native环境搭建(从0到打包APK)

创建新项目 react-native init ProjectName 3. yarn start 安装 EXPO 脚手架 什么是EXPO Expo是通用React应用程序的框架和平台。...它是围绕React Native和本机平台构建的一组工具和服务,可帮助您从同一JavaScript / TypeScript代码库iOS,Android和Web应用程序上开发,构建,部署和快速迭代。...光说不练 纯耍流氓,下面为EXPO 操作演示 创建项目 下载依赖会需要一段时间 EXPO 项目介绍 启动项目 yarn start 启动成功后,它会开启一个服务,会自动打开一个网页,在这个网页...是不是很轻松哈,使用官方提供的,你的自己配置,查找模拟器。 React Native 支持热更新 这样很方便我们开发APP 调试, 数据改变, 视图同时改变。...打包成功,它会提供一个链接,去这个链接你就可以下载打包后的APK 文件 ​ 下载APK 显示效果 到此该结束了 本章介绍了,如何配置React Native 环境, 以及EXPO 神器如何使用

4K00

React Native 项目 Web 端同构初探

当然值得注意的是,官方文档明确表示不支持 React Native 不推荐使用的组件和 API,因此如果您项目中的某些功能依赖第三方库,可能那部分的功能在 web 端同构需要额外处理。...添加到React Native项目 一般来说新建 React Native 项目可以选用 expo-cli 或者 react-native-cli 来创建。...expo-cli web 而我们实际开发可能用 react-native-cli脚手架来构建项目比较多些,那么如何引入 react-native-web呢?...此时我们的项目并不支持web中使用: 为了项目能在web环境运行,我们需要借助今天的主角--react-native-web,有请主角出台: cd rn_web yarn add react-native-web...App.web.tsx 该文件是临时添加的文件,用于使用React Native Web 同构之前验证我们的设置是否正常运行

3.5K30

React Native 开发心得分享

ExpoExpo 是基于 React Native 并整合大量常用的 native module(Expo SDK),像原生的功能如相册,相机,蓝牙等功能, expo 都是直接集成的,相当于封装原生的...本地配置好应用所需的环境,就直接直接运行 RN 项目,开发十分方便。 此外 Expo 还提供了 Expo Go App,只需要在你的移动端设备安装它,启动开发服务器并生成 QR 码。...浏览器打开 snack.expo.dev ,点击 MyDevice,扫码并在 Expo app 查看。 会自动将该程序实时运行在你的移动端设备,意味着你更改代码也将会同步到Expo go 。...极大程度上提升 RN 的开发体验,尤其是真机测试阶段。...不过当你想要共享代码,此时就必须得上 monorepo 了,通常目录结构如下图所示,你也可以到这个仓库查看。

11410

使用Expo开发React-native程序(一)

开发React-native程序,除了官方提供的React-native CLI外,目前还有一个新的选择ExpoExpo通过编写React和js代码,来生成IOS app、安卓app和web端应用。...它主要包括两个工具:Expo CLI:命令行工具,用来创建脚手架、运行、build程序。Expo Go:安装在真机或虚拟机上的app,可以直接运行你构建出来的项目(不需要签名),方便debug和测试。...如何使用:1.全局安装Expo CLI工具npm install -g expo-cli2.创建项目(假设项目名称为expo-1)expo init expo-1或者npx create-expo-app...expo-13.安装其他依赖项如果是苹果M1、M2芯片,需安装watchmanbrew install watchman4.启动npm start启动完成后,可以web端查看效果:http://localhost...:8081/也可以按 i 启动IOS虚拟机(前提是你已经安装了xcode和IOS虚拟机),启动IOS虚拟机后expo会首先给你安装Expo Go,如下图所示:安装好后就可以正式进入app了,效果如下:expo

35210

最新React Native环境搭建(从 0 到 打包APK)

创建新项目 react-native init ProjectName 3. yarn start 安装 EXPO 脚手架 什么是EXPOExpo是通用React应用程序的框架和平台。...它是围绕React Native和本机平台构建的一组工具和服务,可帮助您从同一JavaScript / TypeScript代码库iOS,Android和Web应用程序上开发,构建,部署和快速迭代。...” 光说不练 纯耍流氓,下面为EXPO 操作演示 创建项目 下载依赖会需要一段时间 EXPO 项目介绍 启动项目 yarn start ★启动成功后,它会开启一个服务,会自动打开一个网页,在这个网页...是不是很轻松哈,使用官方提供的,你的自己配置,查找模拟器。 ” React Native 支持热更新 ★这样很方便我们开发APP 调试, 数据改变, 视图同时改变。...” 打包成功,它会提供一个链接,去这个链接你就可以下载打包后的APK 文件 下载APK 显示效果 到此该结束了 ★本章介绍了,如何配置React Native 环境, 以及EXPO 神器如何使用

3.1K30

​用expo,从0到1 轻松学react native

回想我刚接触rn的时候,用的是mac,配置环境,初始化一个rn项目,然后通过xcode打开,然后模拟器运行,或者在手机真机调试,都经过了不断的调试,发现错误,查找文档,重新安装,调试,真的很烦。...需要借助两个工具: 1. create-react-native-app 2....一、手机安装Expo 二、电脑安装 create-nreact-native-app 终端控制台: $ npm install -g create-react-native-app 三、初始化一个rn项目...接下来使用 Expo 扫描这个二维码就可以打开你编写的 RN 应用了。 并且只要在 Expo 打开过一次,就会在 App 中保留一个入口。 Expo相当于一个壳,你只需关注js层面的开发即可。...我体验了下, 很简单,就3步, 即可开始react native跨平台移动端开发!

3.6K60

react-sketch.app说起

我曾经尝试过玩耍sketch的api接口,但是发现连官方文档的示例都运行不起来。。。目前skecth的api接口还不够稳定,还在调整。...下面来谈谈react-sketch.app能做啥1、官方示例ProfileCards 可以建立组件库,这样以后设计师需要使用,直接调用,迭代也方便了,修改一处,其他套用的组件都一并修改了,大大减少了工作量...简单说,就是当你出错了,可以很容易地回到没出错的状态。 你可能已经不知不觉,布置了自己的版本控制系统。...试验功能(Sandboxing) 当你对文件做出重大变更,你可以把编辑内容暂时性地保存在一个单独的区域,不断进行测试和除错。等到确认正确以后,再加入主版本。...推荐一个: Expo Sketch https://sketch.expo.io/ 入门跟快速开发react native必备啊! 还有一类是IDE编辑器。

1.6K50

移动开发者必备的 React Native 开发工具

使用 React Native Debugger 可以提高开发效率和代码质量,推荐开发者开发过程中使用。...6、FinClipFinClip 是小程序容器技术,主要是符合国内开发者的习惯,它可以 React Native 应用运行小程序。...通过使集成 SDK 的形式,开发者可以 React Native 应用快速运行微信小程序、支付宝小程序等,同时利用小程序的生态优势,如丰富的 API 和庞大的用户群体。...Storybook 支持多种开发框架和平台,包括 ReactReact Native、Vue、Angular 等。使用 Storybook 可以提高开发效率和代码质量,推荐开发者开发过程中使用。...React Native CLI 是一个非常重要的工具,推荐开发者开发过程中使用

1.7K20

React Native 开发工具推荐

使用 React Native Debugger 可以提高开发效率和代码质量,推荐开发者开发过程中使用。...图片6、FinClip FinClip 是小程序容器技术,主要是符合国内开发者的习惯,它可以 React Native 应用运行小程序。...通过使集成 SDK 的形式,开发者可以 React Native 应用快速运行微信小程序、支付宝小程序等,同时利用小程序的生态优势,如丰富的 API 和庞大的用户群体。...Storybook 支持多种开发框架和平台,包括 ReactReact Native、Vue、Angular 等。使用 Storybook 可以提高开发效率和代码质量,推荐开发者开发过程中使用。...React Native CLI 是一个非常重要的工具,推荐开发者开发过程中使用

1.7K20

Rn引入react-native-debugger调试开发

项目是由expo搭建的Rn项目 首先要在电脑安装react-native-debugger软件 下载地址:https://github.com/jhen0409/react-native-debugger.../releases/tag/v0.13.0 使用 先把项目模拟器运行起来,会得到19000的端口号 选择 Debugger/New Window,输入你的端口号 项目快捷键m打开菜单...,选择Debug Remote JS,react-native-debugger就会自动连接上 查看network调用,可以直接右键选择Enable Network Inspect...也可查阅官方使用方法 https://docs.expo.dev/debugging/tools/#react-native-debugger 注意 目前react-native-debugger v0.13.0...目前只支持expo v47之前的版本,expo v48是无法使用的 https://github.com/jhen0409/react-native-debugger/issues/754 这是我项目的依赖版本

92810

React Native构建启动屏

在这个教程,我们将演示如何在React Native构建一个启动屏幕。我们将指导你如何使用 react-native-splash-screen 为iOS和Android应用构建出色的欢迎界面。...在网络应用,我们使用预加载器为用户提供动画娱乐,同时服务器操作正在处理。尽管这听起来很直接,但它是构建和保留用户群的关键工具。 React Native创建启动屏有很多好处。...我们的例子,我们选择了白色: 为了确认你的应用可以成功运行,请从Xcode运行一个构建。...如果一切设置正确,你应该会看到类似于这样的结果: 应用加载后隐藏启动屏幕 为了应用加载隐藏启动屏幕,我们将使用之前安装的 react-native-splash-screen 包。...使用 Expo,我们可以以简化和直接的方式做到这一点,因为 Expo 允许我们 app.json 文件配置我们的启动屏幕和图片。 我们将使用上述的 App.js 和 Login.js 文件。

33210

使用umi开发react-native应用

笔者Web端习惯使用 umi 后,就变得越来越“懒”,什么问题都用这一锤子解决。 当工作涉及到 react-native(后文简称:RN)应用的内容,发现 umi 暂时没有支持RN的打算。...于是就产生了这个项目:umi-react-native。 umi RN 仅用来生成中间代码(临时文件),介于编码和构建的之间,旨在引入 umi 的开发姿势来提升 RN 编程体验。...概览 NPM 包 简介 umi-plugin-antd-react-native 为@ant-design/react-native提供按需加载,主题定制、预设、切换,国际化支持,expo链接字体图标...使用alias在编译将其替换为:react-router-native。...使用声明式的Link组件需要注意, RN 与 DOM 存在较大差异: import React from 'react'; import { Link } from 'umi'; import

6.1K30

React Native也能玩区块链了

Expo 是一个工具集,由于它包括了一系列开箱即用的原生 API,例如照像机等,因此使得上手构建 React Native项目变得非常简单。...Ethereum区块链 React Native App 上运行 web3.js JavaScript API 有许多 公开的问题,而且目前看起来还没有 切实的解决方案。...stream)是如何模拟或者实现的,这可能需要 链接到一些原生的依赖;因此,你也许需要使用 expo App,因为它有非常详细的样例项目,例如 react-nativify, React Native...问题是,没有这样针对 React Native 的浏览器,并且 web3 不能注入 App ,因此,在这次试验,我最终用 truffle-hdwallet-provider 配置了一个币库。...并且我十分确信,不久就可以 React Native使用区块链来构建真正的移动 dApp 了。

1.2K20
领券