01 产品是一张地图
把你挡在测试门外的那句话,一定是——"我太多了,不知道从何测起。"
这句话藏着一个错误的假设:你需要测一切。
这个假设是错的,但它之所以活下来,是因为没有人给你一张尺子。你手上没有量产品长宽的工具,只好用脚去丈量它,走一路算一间,当然走不完。
ACC 就是那三把尺子。
开篇除恐
这一章让你做一件最简单的事:凭直觉,描述一款你每天都用的 app。
不需要技术背景、不需要知道"测试用例怎么写"、不需要假装自己是个测试工程师。你能描述,就已经开始做 ACC 了。
你会惊讶于自己其实已经知道很多——只是没有人把它们拢到一张图上。
一个笨人能做成的事,另一个笨人照样能。
白话化
产品
产品就是你每天打开、用、然后关掉的东西。微信、Chrome、记事本、钉钉——都是产品。\ 产品的定义再简单不过:有人用,它就是产品;没人用,它是一段代码。
测试
测试的原始含义就两个字:确认。
确认它没坏,确认它在你说"搜索"的时候真的去搜索了,确认你在 4G 信号弱的地方发送消息,消息不是永远发不出去。
测试不是"挑毛病"。挑毛病谁都会;测试是有顺序地、有目的地说:这块没问题,那块要注意,那块请工程师再看看。
ACC(Attribute-Component-Capability)
三个词,一个意思:用三个视角量产品。
- A — Attribute(属性):形容词。产品是什么样子的?快还是慢?稳还是晃?好看还是凑合?
- C₁ — Component(组件):名词。房子里有几扇门、几个窗?产品里有哪些部分?
- C₂ — Capability(能力):动词。这些东西在一起能干什么?
每一次你拿起一件新事物、说"我先看看它是什么、有哪些部分、能干什么",你已经在 unconsciously 做 ACC 了。
规矩
- 这三个视角没有先后顺序,你从任意一个切入都行。
- 同一件事可以从多个视角交叉看,交叉越多,地图越密、漏的越少。
- ACC 不替代测试执行,它替代的是不知道测什么的茫然。
直觉先行
想象你在一个陌生城市,住三天。
你要做的事大概是:逛几条主要街道(知道城市多大、布局如何);去几家看起来不错的店(知道它们卖什么);点几道菜(知道味道怎样名符其实还是吹牛)。
你不需要走遍每条胡同、进每一家店、尝每一道菜——你有的时间有限,但你知道哪些是值得走、值得试的。
这里的三件事,刚好对应 ACC 的三个 C:
| 你在旅游里做的事 | 对应的 ACC 视角 |
|---|---|
| "这家城市挺快的,治安看起来也还行" | A — 属性 |
| "商业区、老城区、科技园,三个区" | C₁ — 组件 |
| "地铁能到海边,出租打不到公园" | C₂ — 能力 |
产品测试一模一样。你不需要走遍每条胡同——你需要一张地图,知道哪条路通向哪里、哪条路还没铺。
要带走的东西
- 产品测试的恐惧来自于"不知道测什么",而不是"题目难"
- ACC 三视角:形容词(属性)、名词(组件)、动词(能力)
- 直觉上你已经在做——本书只是把那个过程捋正
就这样。
例子贴身
☼ 热身:凭直觉描述一款你每天都用的 app
选一个你每天打开的 app——微信、Chrome、小红书、钉钉都可以。拿纸笔(或打开的记事本),尝试用下面三栏填进去,每个栏至少写三条:
| A(形容词) | C₁(名词,名词性的部件) | C₂(动词,它让你能做什么) |
|---|---|---|
| 快(消息秒到) | 聊天窗口、通讯录、朋友圈 | 发消息、建群、刷朋友圈 |
做这一件事,你已经画出了这个 apps 的 ACC 草图。
你不需要"正确"——正确的 ACC 地图只能在实际产品使用中一边补一边校正。 你的第一版草图不丑,它是起点。
☼☼ 正经:RedPen 的直觉描述(自编)
RedPen 是一本虚构的开源文本编辑器,从命令行启动,支持 Markdown 文件、语法高亮、导出 PDF。
凭直觉,给你三栏,至少各三条:
A(属性)
- 轻量(启动快,占用内存小)
- 简洁(界面几乎没有按钮)
- 可定制(主题、插件)
C₁(组件)
- 主编辑器窗口
- 侧边栏(文件列表)
- 命令面板
- 语法高亮引擎
- PDF 导出模块
C₂(能力)
- 打开并编辑 Markdown 文件
- 实时语法高亮
- 通过快捷键插入模板
- 导出 PDF
就够了。书后面的每一章,都会回来填这张草图——每次回来,它都会更密一些。
这一章要带走的东西
- 产品测试的第一件事不是写用例,是看图。
- ACC 的 A、C₁、C₂ 分别对应形容词、名词、动词——你能凭直觉填,就像描述一个陌生城市。
- 你的第一版草图永远不会"对",但它一定比空着好。
- 所谓测试计划,就是这张图从空白到填满的过程。
就这样。