重学前端
程劭非(winter)
前手机淘宝前端负责人
立即订阅
32956 人已学习
课程目录
已完结 58 讲
0/4登录后,你可以任选4讲全文学习。
开篇词+学习路线+架构图 (3讲)
开篇词 | 从今天起,重新理解前端
免费
明确你的前端学习路线与方法
列一份前端知识架构图
模块一:JavaScript (15讲)
JavaScript类型:关于类型,有哪些你不知道的细节?
JavaScript对象:面向对象还是基于对象?
JavaScript对象:我们真的需要模拟类吗?
JavaScript对象:你知道全部的对象分类吗?
JavaScript执行(一):Promise里的代码为什么比setTimeout先执行?
JavaScript执行(二):闭包和执行上下文到底是怎么回事?
JavaScript执行(三):你知道现在有多少种函数吗?
JavaScript执行(四):try里面放return,finally还会执行吗?
JavaScript词法:为什么12.toString会报错?
(小实验)理解编译原理:一个四则运算的解释器
JavaScript语法(预备篇):到底要不要写分号呢?
JavaScript语法(一):在script标签写export为什么会抛错?
JavaScript语法(二):你知道哪些JavaScript语句?
JavaScript语法(三):什么是表达式语句?
JavaScript语法(四):新加入的**运算符,哪里有些不一样呢?
模块二:HTML和CSS (16讲)
HTML语义:div和span不是够用了吗?
HTML语义:如何运用语义类标签来呈现Wiki网页?
CSS语法:除了属性和选择器,你还需要知道这些带@的规则
HTML元信息类标签:你知道head里一共能写哪几种标签吗?
CSS 选择器:如何选中svg里的a元素?
CSS选择器:伪元素是怎么回事儿?
HTML链接:除了a标签,还有哪些标签叫链接?
CSS排版:从毕升开始,我们就开始用正常流了
HTML替换型元素:为什么link一个CSS要用href,而引入js要用src呢?
HTML小实验:用代码分析HTML标准
CSS Flex排版:为什么垂直居中这么难?
CSS动画与交互:为什么动画要用贝塞尔曲线这么奇怪的东西?
HTML语言:DTD到底是什么?
CSS渲染:CSS是如何绘制颜色的?
CSS小实验:动手做,用代码挖掘CSS属性
HTML·ARIA:可访问性是只给盲人用的特性么?
模块三:浏览器实现原理与API (9讲)
浏览器:一个浏览器是如何工作的?(阶段一)
浏览器:一个浏览器是如何工作的?(阶段二)
浏览器:一个浏览器是如何工作的(阶段三)
浏览器:一个浏览器是如何工作的?(阶段四)
浏览器:一个浏览器是如何工作的?(阶段五)
浏览器DOM:你知道HTML的节点有哪几种吗?
浏览器CSSOM:如何获取一个元素的准确位置
浏览器事件:为什么会有捕获过程和冒泡过程?
浏览器API(小实验):动手整理全部API
模块四:前端综合应用 (5讲)
性能:前端的性能到底对业务数据有多大的影响?
工具链:什么样的工具链才能提升团队效率?
持续集成:几十个前端一起工作,如何保证工作质量?
搭建系统:大量的低价值需求应该如何应对?
前端架构:前端架构有哪些核心问题?
特别加餐 (9讲)
新年彩蛋 | 2019,有哪些前端技术值得关注?
用户故事 | 那些你与“重学前端”的不解之缘
期中答疑 | name(){}与name: function() {},两种写法有什么区别吗?
答疑加餐 | 学了这么多前端的“小众”知识,到底对我有什么帮助?
加餐 | 前端与图形学
加餐 | 前端交互基础设施的建设
期末答疑(一):前端代码单元测试怎么做?
期末答疑(二):前端架构中,每个逻辑页面如何可以做到独立发布呢?
加餐 | 一个前端工程师到底需要掌握哪些技能?
尾声 (1讲)
尾声 | 长风破浪会有时,直挂云帆济沧海
重学前端
登录|注册

持续集成:几十个前端一起工作,如何保证工作质量?

winter 2019-05-14
你好,我是 winter。今天我们来聊聊持续集成。
持续集成是近现代软件工程中的一个非常重要的概念。它是指在软件开发过程中,以定期或者实时的方式,集成所有人的工作成果,做统一的构建和测试。
与持续集成相对的做法是:独立开发各个模块,在软件开发的最终阶段才做集成。持续集成的优势是及早处理集成阶段的问题,使软件质量和开发进度可控。
现在持续集成还有升级版本:持续交付和持续部署,这些因为需要更为完善的基础设施,目前很少有公司前端团队可以用上,我们暂且不谈。
传统的持续集成概念诞生于桌面客户端开发,在 Web 前端领域,由于技术和产品形态的差别,我们需要构建的持续集成体系也有一些区别。

持续集成总论

传统软件的持续集成主要有以下措施。
daily build:每日构建,开发者每天提交代码到代码仓库,构建一个可运行的版本。
build verification test(BVT):构建验证测试,每日构建版本出来后,运行一组自动化的测试用例,保证基本功能可用。
对于前端来说,有一些现实的区别:
前端代码按页面自然解耦,大部分页面都是单人开发;
前端构建逻辑简单,一般开发阶段都保证构建成功,不需要构建;
前端代码一般用于开发界面,测试自动化成本极高;
前端页面跳转,是基于 url,没有明确的产品边界。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《重学前端》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(8)

  • Scorpio
    小公司很惨,一个测试环境,一个生产环境,代码自己build后,丢测试服务器,然后办公室吼一句,老子发布了,测试快来玩玩啊!😂
    2019-05-14
    4
    86
  • 许童童
    前端代码单元测试还是非常有必要的,不知道老师这一块是怎么做的,能否分享一下
    2019-05-14
    1
    10
  • bradleyzhou
    我们的前端有全套的自动化测试,也包括端到端(E2E)的测试。端到端测试运行需要配合一个后端环境。这套测试还是能抓住不少bug,缺点就是比较费服务器。
    2019-05-14
    3
  • 你老公‮下一你了亲并‭
    小公司写单元测试经常会有不知道该写啥好的感觉,因为业务逻辑可能就占了很大一部分。剩下的工具函数,我的原则就是尽量用现成的库或者antdp里的工具函数。E2E测试也不知道如何写,只能参照一些git上的开源项目。但总有种鸡肋的感觉。
    2019-05-17
    2
  • EEEEEEEarly
    页面结构扫描是做的什么事情,发现什么问题呢

    作者回复: 一般是发现一些性能问题或者写法问题,比如页面DOM全空白,肯定是出了错,还有些图片用的不对什么的。

    2019-08-27
  • mone
    我们公司根本没有测试,自己写的代码自己测试,虽然有每天定时更新到测试环境,但是对页面的规则校验却没有做到,一般就是用阿拉丁等统计工具来看看页面的加载时间就没有了

    作者回复: 这就是机会啊

    2019-08-20
  • TinyRui
    规则校验那一块不太懂,为啥要做这个工作?

    作者回复: 排除一些明显的错误

    2019-08-13
  • 柠檬树
    我们公司有用jenkins,udeploy等发布工具,然后有qa,rc,live环境。公司内部也在推devops。我们现在代码就一个分支。以后说是要做到每天都会发布到live.
    2019-07-14
收起评论
8
返回
顶部