Return to Video

5.1 - 测试概述

  • 0:00 - 0:04
    这里是第五章,测试的概述。
  • 0:04 - 0:08
    这是Brian Kernighan,作家,贝尔实验室英雄之一
  • 0:08 - 0:12
    Kernighan和Ritchie的C编程,可能你们大多数人都有这本书
  • 0:12 - 0:16
    如果你读过这本书,你会明白,调试的难度要比写代码翻倍
  • 0:16 - 0:21
    难度加倍!因此,如果你不能一次性写出优秀的代码
  • 0:21 - 0:25
    你将永远没有能力去调试它,因为调试将加倍困难
  • 0:25 - 0:30
    好了,这是 Dystra, 你来对这句话填空
  • 0:30 - 0:36
    测试永远不会证明软件没有错误,而是错误的存在
  • 0:36 - 0:41
    这句话对吗?好的,这句话由来已久了,需要牢记在心
  • 0:41 - 0:47
    这里是一篇一年半前的文章
  • 0:47 - 0:52
    它讨论为什么东西这么贵。在这里你可以看到,
  • 0:52 - 0:57
    他们的研究显示,不是设计有bug,而是糟糕的测试
  • 0:57 - 1:02
    糟糕的测试流程是代码有如此多bug的原因
  • 1:02 - 1:07
    文章说,完全自动化的测试环境几乎没有
  • 1:07 - 1:12
    这是一年半前。现在,我们也刚刚有20%
  • 1:12 - 1:17
    12%软件的组织已经完全自动化的测试系统
  • 1:17 - 1:21
    10%的软件组织手工完成所有测试。你编写测试,看测试结果
  • 1:21 - 1:25
    你编写测试,再看一下结果。有发现什么错误吗?
  • 1:25 - 1:30
    哇,不敢相信,依然是对的。其实这里是不对的。[笑]
  • 1:30 - 1:35
    你知道吗,在敏捷开发之前,首先你有独立的质量保证团队
  • 1:35 - 1:40
    有所有这些阶段和单独的团队。这样,Marge,某种意义上,
  • 1:40 - 1:45
    质量保证团队是要在你的代码中插入质量。[笑]
  • 1:45 - 1:50
    或者确保你的代码的质量。在敏捷式开发中,这是我们要做的一部分
  • 1:50 - 1:54
    我们不断测试。每个星期,我们产出新的代码。
  • 1:54 - 1:59
    你负责测试你的代码,没有别人。而且这些工具高度自动化
  • 1:59 - 2:04
    这和之前所说的做法不太一样
  • 2:04 - 2:08
    敏捷宣言中有争议的是,
  • 2:08 - 2:13
    是否一个好的过程就能带来软件质量
  • 2:13 - 2:20
    而不是由特定的团队来追着你保证质量
  • 2:20 - 2:26
    前面提到过BDD和TDD
  • 2:26 - 2:31
    一些人明白行为驱动设计,但是不清楚测试驱动开发
  • 2:31 - 2:36
    这里我们测试,验收测试、 集成测试,并试图捕获行为。
  • 2:36 - 2:42
    Tdd 是一个步骤的定义,在写代码之前先写单元测试和功能测试
  • 2:42 - 2:47
    所以,这就是定义。所以,好处是你总是使用最新的测试
  • 2:47 - 2:52
    因为你先编写测试代码。所以这就是是他们如何一起工作的
  • 2:52 - 2:57
    Cucumber 用于描述行为和特性
  • 2:57 - 3:02
    你开始编写故事点。当它们失败时,调用的RSpec的测试实现
  • 3:02 - 3:06
    如果失败,你就补充实现缺失的方法
  • 3:06 - 3:11
    当它通过测试,继续内部迭代
  • 3:11 - 3:16
    直到通过RSpec。
  • 3:16 - 3:21
    一旦你完成一个特性,就会通过cucumber的绿色步骤,返回
  • 3:21 - 3:23
    继续开发下去
Title:
5.1 - 测试概述
Description:

In this video, Armando motivates the upcoming discussion of automated testing best practices.

more » « less
Video Language:
English
Lynn Lin added a translation

Chinese, Simplified subtitles

Revisions