Addy Osmani Agent Skills怎么做测试驱动开发

轻芳同学_9221

轻芳同学_9221

2026-11-11

102人浏览

原创

addy osmani agent skills 的 test-driven-development 按红灯、绿灯、重构推进。先让新增断言因预期的行为差异而失败,再做最小改动让它通过,最后整理代码并重跑。

准备能独立运行的标签测试

在你当前的练习目录下新建两个文件:tag.mjs 和 tag.test.mjs。先定好标签处理的规则:如果输入是字符串,就去掉首尾空格再转成全小写;如果不是字符串类型,直接返回空字符串。最开始先写最简单的实现,直接把入参原样返回,先靠这个复现预期的行为差异。

export function normalizeTag(value) {
  return value;
}

把下面的测试代码存到 tag.test.mjs 里,两个断言分别覆盖字符串、非字符串两种场景,全程不需要额外装第三方测试框架。

import test from 'node:test';
import assert from 'node:assert/strict';
import { normalizeTag } from './tag.mjs';

test('trims and lowercases a tag', () => {
  assert.equal(normalizeTag('  JavaScript  '), 'javascript');
});

test('returns an empty string for non-string values', () => {
  assert.equal(normalizeTag(null), '');
});

红灯阶段要确认失败原因

两个文件都写完之后,在当前目录下运行测试命令。正常情况下的预期报错,是断言拿到了没经过处理的原字符串或者 null 值。如果提示找不到模块,先检查文件名和代码里的导入路径是不是写对了。

node --test tag.test.mjs

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

node:test 中的两项失败断言

Liuliu Proactive Agent
Liuliu Proactive Agent

让 AI 代理更主动、具预见性。用户希望代理主动帮助、提前发现问题或汇报进展时触发。关键词:主动、积极、预见、提醒、proactive、anticipate、take initiative。

下载

让断言通过,再决定是否重构

只需要修改 tag.mjs 里的实现就行:先判断入参类型,确认是字符串之后,再调用 trim() 和 toLowerCase() 做处理。改完之后重新跑刚才的测试命令,确认两个断言全部通过。

export function normalizeTag(value) {
  return typeof value === 'string' ? value.trim().toLowerCase() : '';
}

修复后 Node.js 两项测试通过

让助手保留红绿两轮证据

请使用 test-driven-development,先运行新增用例并说明为什么失败,再做最小实现并重跑。不要改弱断言。

现在这段实现已经足够精简,可以直接保留。如果团队有规范,想要把类型判断改成提前返回的写法,重构完之后再跑一遍同样的测试命令,保证两种输入场景的输出结果和之前完全一致。

相关文章

驱动精灵
驱动精灵

驱动精灵基于驱动之家十余年的专业数据积累,驱动支持度高,已经为数亿用户解决了各种电脑驱动问题、系统故障,是目前有效的驱动软件,有需要的小伙伴快来保存下载体验吧!

下载

相关标签:

agent skills agent skills

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

2026.11.06

60

12

Postman请求头Headers怎么设置
Postman请求头Headers怎么设置

围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。

2026.11.06

40

13

Postman接口请求发送教程
Postman接口请求发送教程

详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。

2026.11.06

40

10

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

60

12

DBeaver安全防护教程大全
DBeaver安全防护教程大全

DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。

2026.11.05

60

12

DBeaver连接创建与配置教程
DBeaver连接创建与配置教程

本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。

2026.11.04

60

16

XORM框架结构体映射与表结构同步
XORM框架结构体映射与表结构同步

本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。

2026.11.04

60

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

60

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
文心快码功能介绍
文心快码功能介绍

共0课时 | 0人学习

文心快码Agent使用手册
文心快码Agent使用手册

共0课时 | 0人学习

文心快码产品文档
文心快码产品文档

共0课时 | 0人学习