首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【经验分享】React Native在全民K歌APP中的使用分享

    React Native在全民K歌APP中的使用分享 Facebook 于 2015 年 3 月发布了 React Native:使用 ReactJS 编写 Native 代码的框架。...使用 JS 编写代码 Native 渲染,用Web 开发效率实现 Native 体验的模式,正在打造一条 Web 和 Native 混合开发的新道路。...全民K歌于 3.1 版本开始在原有的大赛功能模块(webview H5)上尝试进行 React Native 接入和业务改造。接入的过程中也踩到了很多坑。...这次就是对我们接入以来总结的经验进行的一次分享。对相对于原来 Web 开发上带来的改变进行了对比,并主要阐述了接入以来遇到的一些问题和解决(性能、代码、组件、BUG等)。...主要内容包括: React Native 通信机制 React Native 能力优势 接入中遇到的问题和解决 性能、不足及后续优化 ? 作者: 全民K歌项目团队 calvin、leo、eddy

    7.8K70

    React Native 持续部署实践— push 代码构建出新版的 Growth

    最近我们正在使用 React Native 来重写 Growth 应用,GitHub 地址:growth-ng 。...因此在这一篇文章里, 我们将介绍基于下面的几个框架来搭建持续集成: React Native 与持续集成服务器 Travis CI 的使用 单元测试 Jest 及 UI 测试框架 React Test...实践上证明,快了十几秒: cache: yarninstall:- yarn install 在正常的持续集成作业中,只会进行 eslint 和单元测试。...中 mock 这些方法,如下是用来 mock 包 react-native-device-info 中的 getVersion 方法: jest.mock('react-native-device-info...总的来说,React Native 有一些测试还是不容易写的。并且诸如 WebView 这样的组件,在测试的时候会报错~~。

    2.1K50

    如何自动化测试 React Native 项目 (下篇) - 单元测试

    接着上篇的内容, 这篇文章会详细的介绍在 Glow 我们如何写单元测试, 以及在 React Native 中各个模块单元测试的详细实现方式。...(在 vuejs 测试中可以用 vue-test-utils) Enzyme 提供了可以直接操作 React component 中的 props 和s tate 的方法,使得建造测试 context...Jest Snapshot Test的特点: Jest 使用一个 test renderer 来生成出 React tree 的序列化结构树。...在 React(以及 React Native ) 的开发理念中, 开发者把重点放在描述要显示的组件在不同输入时的静态状态,然后交给React去处理UI的更新。...总结 在 Glow 的 React Native 项目测试中, 我们有大量的单元测试,包含了Component/Reducers/Action Handlers/Selectors/Utils/WWW

    3.3K21

    React Native单元测试

    概述 所谓单元测试,就是对每个单元进行的测试,一般针对的是函数、类或单个组件,不涉及系统和集成,单元测试是软件测试的基础测试,一个完备的软件系统都会涉及到单元测试。...,是React.js默认的单元测试框架。...React 树进行快照或别的序列化数值快速编写测试,提供快速更新的用户体验; 支持异步代码测试:支持promises和async/await; 自动生成静态分析结果:不仅显示测试用例执行结果,也显示语句...环境搭建 安装Jest 首先,在项目目录下使用下面的命令安装Jest。...npm install --save-dev jest //或者 yarn add --dev jest 如果你使用的是react-native init命令行方式来创建的RN项目,且RN版本在0.38

    91920

    前端单元测试之Jest

    概述 关于前端单元测试的好处自不必说,基础的介绍和知识可以参考之前的博客链接:React Native单元测试。在软件的测试领域,测试主要分为:单元测试、集成测试和功能测试。...单元测试:在计算机编程中,单元测试(英语:Unit Testing)又称为模块测试, 是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。...在单元测试的基础上,将所有模块按照设计要求(如根据结构图)组装成为子系统或系统,进行集成测试。 功能测试,就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。...; 沙箱和快速:Jest虚拟化了JavaScript的环境,能模拟浏览器,并且并行执行; 快照测试:Jest能够对React 树进行快照或别的序列化数值快速编写测试,提供快速更新的用户体验; 支持异步代码测试...附: 实例源码 参考: React Native单元测试 Jest测试官方文档

    2.7K20

    React Native自动化测试

    使用Jest来测试 Jest是在命令行通过node来执行的纯js测试工具。测试代码放置在__tests__目录下。...你可以在react-native源代码的根目录中使用如下命令来运行现有的jest测试代码: npm test 我们建议你在贡献代码的时候也添加自己的测试代码。...单元测试 (Android) React Native使用Buck编译工具来运行测试。 单元测试部分直接在本地运行,不需要模拟器。...集成测试需要在模拟器/真机上运行,以验证模块、组件以及React Native的内核部分(比如bridge)在端对端测试中运作正常。...屏幕截图在32位和64位色深以及不同的操作系统版本上可能会有细微的差别,所以建议强制在指定的配置环境中执行测试。此外我们还强烈建议所有的网络数据和其他的潜在依赖项都应该事先模拟。

    3K60

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

    在这篇文章中我会介绍一下我对 React Native 项目自动化测试的核心想法以及自动化测试中 E2E 部分的具体实现。...在 如何自动化测试 React Native 项目 (下篇) 中会详细介绍单元测试的具体实现方法。...集成测试和单元测试选择了 Jest 和 Enzyme (参考 下篇 )。 得益于 React Native 优秀的可测性和React良好生态环境, 集成/单元测试都可以用很直观简单的方式实现。...在 React Native 中传统的黑盒测试框架会遇到更多的问题, 因为RN有两个 thread 控制 App 的渲染(js 线程和 native 线程),会更难控制 App 的行为。...我们的 React Native 在iOS和Android的代码几乎相同, 因此也可以复用一套E2E的测试 case 。 支持各种Test runner, 比如mocha, AVA,jest等。

    3.8K32

    使用 Jest 进行前端单元测试

    Jest 默认使用 Jasmine 语法,支持直接使用 Promise 和 async/await 进行异步测试,支持对 React 组件进行快照监控, 扩展和集成 Babel 等常用工具集也很方便。...目前 Jest 已经在 Facebook 开源的 React, React Native 等前端项目中被做为标配测试框架。 下面简单介绍一些 Jest 比较有用的功能和用法。...在 Jest 中也不用像 mocha 那样通过执行 done 来通知异步结束,而是直接返回 Promise 和 async/await 就好。...Jest 中,不同的测试文件是分开独立执行的,如果担心各种 mock 和 unmock 在不同测试用例之间造成冲突,可以按照分类把用例分开放到不同文件内。...下图为在 react-native 源项目中执行 verbose 的 jest test 时,控制台的实时输出: ? Jest 的覆盖率统计: ? 详细报错定位: ?

    5.6K90

    那些年错过的React组件单元测试(上)

    然后我翻阅了大量的文档,发现基于dva的单元测试文档比较少,因此在有了一番实践之后,我梳理了几篇文章,希望对于想使用 Jest 进行 React + Dva + Antd 单元测试的你能有所帮助。...前端自动化测试产生的背景 在开始介绍jest之前,我想有必要简单阐述一下关于前端单元测试的一些基础信息。 为什么要进行测试?...Jest 关于Jest,我们参考一下其Jest 官网[1],它是Facebook开源的一个前端测试框架,主要用于React和React Native的单元测试,已被集成在create-react-app...在单元测试中,我们可能并不需要关心内部调用的方法的执行过程和结果,只想知道它是否被正确调用即可,甚至会指定该函数的返回值。这个时候,mock的意义就很大了。...总结 到这里,关于前端单元测试的一些基础背景和Jest的基础api就介绍完了,在下一篇文章中,我会结合项目中的一个React组件来讲解如何做组件单元测试。 ?

    5K20

    beeshell:开源的 React Native 组件库

    React Native 提供了 StyleSheet 通过创建一个样式表,使用 ID 来引用样式,减少频繁创建新的样式对象,在组件库的样式变量应用中灵活使用 StyleSheet.create 和 StyleSheet.flatten...单元测试 单元测试(Unit Testing),是指对软件中的最小可测试单元进行检查和验证。在结构化编程的时代,单元测试中单元指的就是函数。...beeshell 组件库使用 Jest 做为单元测试的工具,自带断言、测试覆盖率工具,实现开箱即用。...使用 Jest 进行在快照测试,在 beeshell 中第一次对某个组件进行测试时,会在测试目录下创建一个 snapshots 文件夹,并将快照结果存放在该文件夹中。...同时在开发 React Native 应用的几年时间里,我们已经积累了 50+ 基础以及业务组件,我们后续会把积累的组件进行梳理与调整,全部迁移到 beeshell 中。

    1.9K10

    React Hook测试指南

    在React为什么需要Hook中我们探讨了React为什么需要引入Hook这个属性,在React Hook实战指南中我们深入了解了各种Hook的详细用法以及会遇到的问题,在本篇文章中我将带大家了解一下如何通过为自定义...如何对自定义Hook进行单元测试 在React Hook实战指南中我们提到Hook就是一些函数,所以对Hook进行单元测试其实是对一个函数进行测试,只不过这个函数和普通函数的区别是它拥有React给它赋予的特殊功能...Jest Jest是Facebook开源的一个单元测试框架,它的使用率和知名度都非常高,一些著名的开源项目例如webpack, babel和react等都是使用Jest来进行单元测试的,由于这篇文章的重点不是...我们源代码中的函数可能使用了另外一个文件或者node_modules中安装的一些依赖,这些依赖可以使用jest.spyOn来进行mock,下面是一个简单的例子: // somewhere/sum.js...总结 在本篇文章中我给大家介绍了什么叫做单元测试,为什么我们需要在自己的项目里面引入单元测试以及教大家如何使用Jest和react-hooks-testing-library来测试我们自定义的hook。

    1.7K10

    JavaScript 测试系列实战(一):使用 Jest 和 Enzyme 测试 React 组件

    本篇教程是 JavaScript 测试系列实战 的第一篇教程,首先介绍了测试的类型,然后主要通过一个 React 项目教会你如何使用 Jest 编写第一个测试,然后使用 Enzyme 对 React 组件进行浅层渲染...初识 Jest 单元测试 测试是检查代码的代码,能够大大增强我们对应用的信心。更重要的是,测试会阻止你在修复一件事情的同时破坏另一件事情,让我们能够放开手脚进行功能的添加与大规模重构。...因此这里建议直接使用 npx jest 执行测试。 编写第一组测试 每个测试文件通常有多个测试用例。Jest 允许我们通过 describe 函数对测试用例进行分组,它创建了一个可以组合多个测试的块。...配置 jest-enzyme 你应该还记得,在刚才的测试代码中,我们还是使用了 Jest 自带的 Matcher(toEqual)。...小结 在过去的两个小节中,我们了解、安装和配置了 Enzyme,并且接触了 shallow 浅层渲染这个单元测试利器,并且循序渐进测试了两个 React 组件。

    3K10

    前端接入单元测试(Node+React)

    node测试框架因为egg内置Mocha,因此不额外引入jest。 Jest 被各种 React 应用推荐和使用。...Create React App 新建的项目就会默认配置 Jest,我们基本不用做太多改造,就可以直接使用。...目的在于,测试经过单元测试后的各个模块组合在一起是否能正常工作。会对组合之后的代码整体暴露在外接口进行测试,查看组合后的代码工作是否符合预期。...orange-ci跑单元测试 优点:配置简单,和现有的工作流集成在一起,可以在构建前执行测试用例,执行效率高…总结node项目可以利用egg自带的测试工具,针对controller, service,...extend, helper等模块编写单元测试,特别是controller重要的路由需要做单元测试;控制台和其他React项目可以利用jest工具,针对方法、组件、模块去做单元测试,特别是组件,可以利用快照功能避免多次修改测试用例

    3.3K30

    Unit Testing

    #应该测试你的程序 其实每一个项目都应该使用单元测试,单元测试可以很好的保证你的代码不会欺骗你。 世界上没有任何一个完美的程序,也更不会有完美的人可以写出没有任何问题的代码。...#配置单元测试 #安装 Jest 我们使用 yarn 来安装 Jest 包 yarn add -D jest 在 package.json 文件中加入测试命令 { "scripts": {..."test": "jest" } } 之后只需要在 Command Line 中输入 yarn test 即可开启测试 #配置时遇到的麻烦 在我配置 Jest 时遇到了几个麻烦,让我的测试代码运行不起来...文件夹下的文件和代码 无法识别 css scss 等样式文件 在我们组件当中大部分都会有 css 或者 scss 等文件,但是 Jest 并无法处理这类文件,此时需要将此类样式文件都 Mock 掉 {...在表格中 ✅ 的,建议是在 100% 的覆盖率 #参考 Jest React 测试技巧 React 单元测试策略及落地 单元测试-维基百科

    1.3K20

    写代码无BUG,网易云前端单元测试方案总结

    前端单元测试的领域也很多,这里主要讲对于前端组件如何进行单元测试,最后会主要介绍下对于 React 组件的一些测试方法总结。...Jest 和 Jasmine 具有非常相似的 API ,所以在 Jasmine 中用到的工具在 Jest 中依然可以很自然地使用。..."] } Jest 在真实浏览器环境下测试 目前 Jest 不支持直接在真实浏览器中进行测试,其默认的启动器只提供了一个 JSDOM 环境,在浏览器中进行单元测试目前只有 Karma 方案能做到,所以也可以使用...使用 Jest + Enzyme 对 React 进行单元测试 ?...另外测试 React组件除了 Enzyme 提供的操作, Jest 中还有很多其他有用的特性,比如可以 mock 一个 npm 组件的实现,调整 setTimeout 时钟等,真正进行单元测试时,这些工具也是必不可少的

    9.6K20
    领券