简化测试用例

Avatar of Chris Coyier
Chris Coyier

DigitalOcean 为您旅程的每个阶段提供云产品。立即开始使用 200 美元的免费额度!

如果您在构建网页时遇到问题,那么您可以做的最有帮助的事情就是开始构建一个简化的测试用例。“问题”可以是任何事情:CSS 没有按您预期的方式工作,JavaScript 行为不正常,存在跨浏览器问题等。在创建简化测试用例的过程中,您将:

  • 发现这是一个您犯的错误,帮助您隔离并修复它(或者为 寻求帮助 提供一个很好的测试页面)
  • 发现一个真正的错误,并为您提供一个完美的演示,以便向相关人员展示。

那么,什么是简化测试用例呢? 简化测试用例是您创建的一个演示/示例页面,它以尽可能少的代码重现您遇到的问题。**仅**包含显示问题内容所需的 HTML。**仅**包含与该简化 HTML 相关的 CSS。**仅**包含与当前问题功能相关的 JavaScript。

简化测试用例是解决错误的绝对、毫无疑问的、首要方法。 事实上,有些人仅仅通过将错误报告转换为简化测试用例,供更有经验的开发人员探索,从而为开源项目做出贡献。以下是如何从您的问题开始创建测试用例的步骤…

1. 使其静态

如果是前端问题,请将页面设为静态,而不是从服务器动态构建(例如,如果您使用的是某种 CMS)。也就是说,查看问题页面的源代码,将其复制粘贴到新文档中,然后从那里开始您的简化测试用例。将该文档放在一个仅用于测试用例的新目录中。

2. 使其隔离

然后获取 HTML 所需的所有资源文件(CSS、图像、JavaScript 等),并将它们也放在该目录中。现在,您拥有了一个专门用于此目的的封闭式小环境。现在,您可以编辑这些资源文件和标记,而无需担心会影响任何实时内容。如果需要将测试用例传递给其他人,这也使其具有可移植性。

3. 简化,简化,再简化!

现在开始删除一些内容,定期测试以确保您的问题仍然存在。首先删除 HTML,以便页面上显示的内容减少到所需的最小程度。然后删除现在不需要的任何 CSS。然后删除与问题无关的任何 JavaScript。如果不是 JavaScript 问题,请删除所有 JavaScript(除非您认为它可能干扰问题的真正原因)。

4. 记录它

如果代码中有一些您怀疑可能是问题的部分,请在代码中添加注释。每种 Web 语言都有某种方法可以插入不影响代码的注释。

5. 将其发布到网上

如果您在本地工作,请将简化测试用例发布到网上的某个位置。我见过有人使用免费的 Dropbox 来托管一个快速示例。这将使您更容易与可能能够提供帮助的其他人共享问题。

但是我不知道问题出在哪里!他们需要看到所有内容!

确实知道问题出在哪里。无论问题是什么,它就是它。向某人展示“所有内容”通常会让他们不知所措,并使他们难以理解。至少我个人是这样认为的。如果有人请求帮助,他们在论坛中粘贴了 1000 行 CSS 代码,我的眼睛通常会变得模糊,然后我就跳过它。但是,简化测试用例通常很有趣,并让人想要查看。

其他资源


您是否知道关于此主题的其他好的讨论?请告诉我,我会将它们链接起来。