From 317ba0684234b06e677a65365338eac3ee4830dc Mon Sep 17 00:00:00 2001 From: Jinjiang Date: Fri, 6 Dec 2024 15:01:42 +0800 Subject: [PATCH] docs(zh-cn): review a-crash-course (#2563) --- docs/zh/guide/essentials/a-crash-course.md | 36 +++++++++++----------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/docs/zh/guide/essentials/a-crash-course.md b/docs/zh/guide/essentials/a-crash-course.md index d818024d0..0af8fb3ec 100644 --- a/docs/zh/guide/essentials/a-crash-course.md +++ b/docs/zh/guide/essentials/a-crash-course.md @@ -37,7 +37,7 @@ export default { ## 第一个测试 - 渲染待办事项 -我们将编写的第一个测试验证待办事项是否被渲染。先看测试代码,然后讨论每个部分: +我们将编写第一个测试以验证待办事项被渲染。先看测试代码,然后讨论每个部分: ```js import { mount } from '@vue/test-utils' @@ -54,15 +54,15 @@ test('renders a todo', () => { 我们首先导入 `mount`——这是在 VTU 中渲染组件的主要方式。使用 `test` 函数声明一个测试,并给出简短的描述。`test` 和 `expect` 函数在大多数测试运行器中是全局可用的 (此示例使用 [Jest](https://jestjs.io/))。如果 `test` 和 `expect` 看起来令人困惑,Jest 文档中有一个[更简单的示例](https://jestjs.io/docs/getting-started),可以帮助你理解它们的用法和工作原理。 -接下来,我们调用 `mount` 并将组件作为第一个参数传入——这是几乎每个测试都会执行的操作。根据约定,我们将结果赋值给一个名为 `wrapper` 的变量,因为 `mount` 提供了一个简单的 “包装器”,它为测试提供了一些方便的方法。 +接下来,我们调用 `mount` 并将组件作为第一个参数传入——这是几乎每个测试都会执行的操作。根据约定,我们将结果赋值给一个名为 `wrapper` 的变量,因为 `mount` 提供了一个简单的“包装器”,它为测试提供了一些方便的方法。 -最后,我们使用另一个在许多测试运行器中常见的全局函数 - `expect`。我们的想法是,我们正在断言或*期望*实际输出与我们认为的应该匹配。在这个例子中,我们使用选择器 `data-test="todo"` 查找元素——在 DOM 中,这将看起来像 `
...
`。然后我们调用 `text` 方法获取内容,并期望它是 `'Learn Vue.js 3'`。 +最后,我们使用另一个在许多测试运行器中常见的全局函数 (也是 Jest 支持的) `expect`。这里的想法是,我们断言或*期望 (expect)* 实际输出的与我们认为的相匹配。在这个例子中,我们使用选择器 `data-test="todo"` 查找在 DOM 中形如 `
...
` 的元素。然后我们调用 `text` 方法获取内容,并期望它是 `'Learn Vue.js 3'`。 -> 使用 `data-test` 选择器并不是必需的,但它可以使你的测试更加稳定。随着应用程序的增长,类和 ID 往往会变化或移动——通过使用 `data-test`,其他开发人员可以清楚地知道哪些元素在测试中被使用,并且不应更改。 +> 使用 `data-test` 选择器并不是必需的,但它可以使你的测试更加稳定。随着应用程序的增长,class 和 id 往往会变化或移动,而通过使用 `data-test`,其他开发人员可以清楚地知道哪些元素在测试中被使用,并且不应更改。 ## 使测试通过 -如果我们现在运行这个测试,它会失败,并显示以下错误信息:`Unable to get [data-test="todo"]`。这是因为我们没有渲染任何待办事项,因此 `get()` 调用未能返回一个包装器 (记住,VTU 将所有组件和 DOM 元素包装在一个带有一些方便方法的 “包装器 (wrapper)” 中)。让我们更新 `TodoApp.vue` 中的 `