测试驱动开发适合初学者吗? [关闭]

2024-01-06

将这个问题扩展为我如何学会通过问题描述到代码 https://stackoverflow.com/questions/137375/有两个人提到了 TDD。

对于初学者来说,进入 TDD 会有好处吗(并避免将来的坏习惯?)或者对于理解编程语言是什么的阶段来说会太复杂吗?


TDD 比“传统”方法(直到最后才进行测试)更简单 - 因为测试阐明了您对问题的理解。如果您实际上并不清楚问题是什么,那么编写测试就非常困难。

因此,对于初学者来说,编写测试可以让思维朝着正确的方向发展,这是契约行为,而不是实现行为。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

测试驱动开发适合初学者吗? [关闭] 的相关文章

  • 无法弄清楚是什么导致我的测试失败

    我是 Rails 新手 我构建了一个应用程序 但没有进行 TDD 但现在我回去并尝试通过所有测试 我已经通过了其中的大部分 但还有一些与同一问题相关的我无法弄清楚 该应用程序也可以正常运行 我只是无法通过这些测试 测试失败并提供以下内容 1
  • 如何使用 iOS 和 Objective-C/Xcode 加速 TDD 流程

    一直在寻找 Objective C 和 iOS 开发的 TDD 经验 以前的post https stackoverflow com questions 3628906 anyone done an objective c xode ver
  • TDD 时提取类。如何测试新提取的类?

    因此 我的主类中有几个方法使用矩阵来打开或关闭像素 我已经运行了所有当前的测试 所以我决定现在是时候提取一些与矩阵等相关的逻辑并创建一个 Matrix 类了 我的问题是 除了我目前对 SUT 类进行的测试 我才刚刚开始 所以我目前只有一个类
  • 我应该为所有内容编写单元测试吗?

    我想知道我是否应该为所有内容编写单元测试 有一些类很难编写单元测试 例如 我正在编写一些处理音频的程序 用于从麦克风捕获音频的类和用于向扬声器播放音频的类 我如何为这些类编写单元测试 我无法获得这些类的输出和输入 因此几乎不可能测试它们 我
  • 关于测试驱动开发的哲学问题

    我一直对测试驱动开发很感兴趣 但当我在实际项目中尝试时 我永远无法坚持下去 当我尝试时 我不断出现几个哲学问题 你如何应对巨大的变化 当涉及到测试单一功能 一些参数 结果值 少量 副作用 时 TDD 是理所当然的 但是 当您需要彻底检修大型
  • 单元测试中什么是正向测试和负向测试

    我对 TDD 还很陌生 我看到一些文档提到了阳性测试 阴性测试 边界测试等 有人能告诉我阳性测试和阴性测试之间的区别吗 有没有关于不同类型测试的参考资料 我不是在找书 阳性检测 通过提供有效的测试系统 数据 阴性检测 通过提供无效的测试系统
  • 使用 PHPUnit 发送 POST 请求

    我有一个 symfony 网站 我正在尝试进行一些单元测试 我有这样的测试 我尝试提交一些东西
  • TDD 如何处理模拟对象中的更改

    在编写单元测试时 对于单元与之交互的每个对象 我正在采取这些步骤 从我对 JBrains 的理解中窃取 集成测试是一个骗局 http www infoq com presentations integration tests scam 在单
  • PHP 全局常量是一种良好的现代开发实践吗?

    我正在开发一个具有相当大的 PHP 代码库的新项目 该应用程序使用了相当多的 PHP 常量 define FOO bar 特别是对于数据库连接参数之类的事情 这些常量都定义在一个配置文件中 该文件是require once 基本上应用程序中
  • 测试 Django 信号的正确方法

    我正在尝试测试发送的信号 它正在提供 args 内部触发信号contact question create提交表单后立即查看 我的测试用例是这样的 def test form should post proper data via sign
  • 嗅探器找不到 DJANGO_SETTINGS_MODULE

    我正在尝试在开发过程中进行更改后自动重新运行测试 搜索了一下之后sniffer http pypi python org pypi sniffer看起来不错 但如果我运行它 我的测试会失败并出现以下错误 ERROR Failure Impo
  • Cython 和 Python 项目测试驱动开发和 .pyx 文件结构建议

    构建一个的最佳方式是什么python cython项目 以便我可以对驻留在其中的代码进行单元测试 pyx文件 是否可以就地对该代码进行单元测试 或者重构可以让我以另一种方式实现这一目标 我是新来的cython但有 Python TDD mo
  • 如何在powershell中进行TDD和单元测试?

    随着微软将 powershell 强加到所有新的服务器产品中 我开始 不情愿地 认为我需要认真对待它 认真对待 的一部分是 TDD 您是否找到了对 Power shell 脚本进行单元测试的好方法 我找到了嘲笑的样本极客噪音先生 http
  • 使用 setInterval 测试函数时 Mocha 和 Chai 测试失败

    我是 TDD 新手 正在使用 Mocha 和 Chai 我创建了一个测试 当值增加时该测试通过 但是当该增加放在 setInterval 内时 它会失败 这段代码的目的是让某些东西在屏幕上移动 function startMovingThi
  • QUnit 与 Jasmine? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 这两个测试框架的主要区别是什么 我是测试驱动开发的新手 从头开始 QUnit 非常容易上手 因为您只需要包含两个文件和一点标记 然后就可以开始编
  • 涵盖 .NET 中的 TDD、DDD 和设计模式的书籍

    我想要一本能够真正让我全面了解使用 C TDD ASP NET MVC DDD 和设计模式 例如存储库模式 的现代 ASP NET 开发的书 我非常擅长 C 和 ASP NET MVC 但想填补空白 如果您对涵盖这些主题的一两本书有很好的体
  • 模拟迭代行为

    我有一个具有迭代行为的界面 但在 Rhinomocks 中模拟它时遇到了麻烦 示例接口和类是我的问题的一个非常简单的版本 每次调用 LineReader Read 时 LineReader CurrentLine 都应返回不同的值 下一行
  • 如何TDD UIGestureRecognizers?

    在尝试使用 UIGestureRecognizer 编写 TDD 代码时 我发现无法以编程方式验证目标操作 如果没有这个 我不确定我是否可以正确测试它 如果手势识别器在 IB 中设置 支持 iOS 5 则目标动作会在 NIB Storybo
  • MSTest:如何增加测试时间

    我有一个测试需要运行超过 1 分钟 VS2008 MSTest 测试是从 VisualStudio 启动的 const int TestTimeout 1 TestMethod Timeout 10 60 1000 10 minutes p
  • 测试驱动开发 - 我应该测试数据库列和索引吗?

    我是 TDD 新手 我发现shouldagem 能够测试数据库实体的列是否存在以及测试其索引 但是否有必要在我的测试套件中包含列和索引的测试 我是否需要担心在开发过程中可能会删除任何列和索引 不要测试数据库列 这只是测试实施 不要测试实现

随机推荐

  • 将字符串编码为 ascii

    我有一个很长的字符串 我想将其编码为 ascii 我正在做 s s encode ascii replace 但我得到 ascii codec can t decode byte 0xc3 in position 2646 ordinal
  • 现有的 .NET 单元测试框架有什么区别?

    关于什么使一个人比另一个人更好 我听到了许多不同的意见 但是任何人都可以提供一个技术解释来解释为什么我应该选择一个单元测试框架而不是另一个 例如 我使用 Visual Studio Team System 为什么我要选择开源测试框架 NUn
  • DisplayMessageActivity 无法解析为类型构建第一个 Android 应用程序

    嗨 我刚刚开始开发第一个 Android 应用程序开发者 android com 首先 我从 S O 那里了解了许多错误根源及其解决方案 但我一直在试图弄清楚这个说法 DisplayMessageActivity 无法解析为类型 而我们必须
  • 构建时未找到 android.os.ServiceManager

    我在构建 android 源代码时遇到以下错误 我在其中添加了使用 android os ServiceManager 的自定义应用程序 cannot find symbol symbol class ServiceManager loca
  • 如何处理库中的函数弃用?

    我正在开发一个 Java 库 并想从中删除一些函数 我这样做的原因是公共 API 和设计清理 有些对象具有设置器 但应该是不可变的 某些功能已通过不同的方法实现得更好 更清晰 等等 我已将这些方法标记为 已弃用 并希望最终删除它们 目前我正
  • C# 多个字符串包含[重复]

    这个问题在这里已经有答案了 基本上我想检测多个字符串 当前的代码示例是 if str3 Contains example1 continue 我如何添加 example1 example2 和 example3 您可以使用Linq如果你想用
  • CSS 类选择器不起作用

    我正在尝试使用 HTML 和 CSS 制作自定义警报框 容器的 ID 为 xAlert 并且有 3div其中 一个用于标题 一个用于描述 一个用于操作 如 确定 或 取消 到目前为止 这是我的代码 xAlert width 368px 40
  • Wordpress 本地服务器到实时主机

    我正在开发一个 WordPress 网站 我将文件 wordpress 上传到我的实时主机 所以我的 WordPress 新的实时 url 网站就像这个示例 urlhttp mywordpress com http mywordpress
  • 如何在Spring JUnit测试中WEB-INF/spring/webmvc-config.xml配置正确

    我有一个基于 Maven 的 Spring 3 0 项目 Web 应用程序的 Spring 配置文件位于
  • LTE堆栈协议开发

    在阅读一篇有关 LTE 的文章时 我遇到了一个术语 LTE 堆栈协议开发 遗憾的是 没有关于这个术语的进一步解释 当我在谷歌上查找时 它发现了 LTE 协议开发的所有职位空缺 所以问题是 LTE 堆栈协议开发 到底是什么 如果可能的话 我想
  • 欧拉计划 3 - 为什么这个方法有效?

    13195 的质因数是 5 7 13 和 29 数字 600851475143 的最大质因数是多少 我用自己的方式在Project Euler上解决了这个问题 速度很慢 然后我在某人的github帐户上找到了这个解决方案 我不明白为什么它有
  • 所有级别的日志中每个用户/会话都有唯一的 ID? Log4J?

    我们正在进行一些性能测试 以确定应用程序的哪些步骤需要多少时间 当然 使用正则表达式轻松解析 过滤日志是一个魅力 针对问题 我们的jsf应用程序被分成几个项目 这些项目被其他 非jsf 应用程序使用 我的第一个方法是 if logger i
  • VBA 中 Range() 的 .Value 属性

    我见过的一些 Excel VBA 代码没有使用 Range 对象上的 Value 属性 例如 myX Range A1 而不是 myX Range A1 Value 这仅仅是因为范围对象的默认行为是返回单元格中的值吗 是否有一个时候我会no
  • UITableView 普通样式部分标题在搜索视图上重绘

    当 tableView 位于搜索栏显示控制器的后台时 有人成功地重新加载了 tableView 吗 看照片看看发生了什么 我有一个带有搜索显示控制器的 UITableViewController 当我在显示搜索显示控制器的表视图时对 UIT
  • LINQ 中的日期范围重叠问题

    表中给定特定记录的日期范围 例如特定字段 名称 如果有人试图在之前的日期范围内插入该名称 则不应允许这样做 我在这里尝试过一些代码看看这个 if dataContext TableAs Where x gt x EndDate gt Sta
  • Perl 版本特定语法资源

    网络上是否有资源可供我查找 perl 版本 5 8 1 与 current stable 特定语言语法 而无需转到 perldoc 并在版本之间切换 然后搜索我正在寻找的语言项目看看它是否存在于所选版本中 这似乎是一种蹩脚的方式 我想我应该
  • 数据绑定中的双重间接。在模板中插入字符串

    我正在尝试解决指令链接函数中的双重绑定 scope a surprise scope b a 模板是 div b div 它呈现为 div a div 是否可以让视图显示 div surprise div 我一直在尝试重新编译该指令 但是有
  • Python 中通过 USB 转换器进行串行通信 - 如何解决这个问题?

    python 程序需要每秒从串行端口接受一个字符串 我计划使用 RS 232 转 USB 转换器 该应用程序将在 Ubuntu 10 04 下运行 我该如何处理这个问题 我用吗pySerial http pyserial sourcefor
  • @ 字符未显示在 Watson Conversation Service 响应字符串中

    在使用 IBM Watson Conversation Service WCS 时 我想在响应中打印电子邮件地址 问题在于 WCS 忽略了 符号之后的所有字符以及 字符本身 我尝试使用 and 逃避它 但并没有多大帮助 如何在响应字符串中打
  • 测试驱动开发适合初学者吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi