说说TDD的好处和坏处-对话

2023-10-30

小帆 17:20

谁来科普下TDD的好处和坏处是啥?我们市场VP听说了TDD以后情有独钟,但是大致看了一些好像很难推广?

菌菌 17:21

好处是大大的,坏处是成本很高

罗耀秋 17:22

你自己开发写代码 你愿意这样干不

小帆 17:23

@JuneC 好处具体是啥?

福瑞德孟 17:24

对于一锤子买卖的项目来说,如果没有自动化的工具,那成本一定是大于收益的;对于产品来说,一定是小投入,大收益

菌菌 17:28

据说是在源头发现问题

菌菌 17:28

测试更贴近需求等等

韩炳涛 17:42

如果是想通过TDD把不靠谱的工程师变成靠谱的,可能成本更高

james 18:45

实际上我们在两个团队里实践敏捷,15个人里培养了5个不错的全栈。然后3个跳了。。。培养成本不高,留人的成本会比较高[吐]

james 18:57

tdd的实践,我们刻意想做,但是没做成。结果有一次重构,只要求一个故事至少一个用例覆盖。不知不觉中,团队将单元测试架构不断优化,结果写一个用例不到5分钟。这时有同事先易后难,先写测试例,tdd的思维莫名其妙的产生了

james 18:58

后来回顾,测试架构足够简单,团队才有意愿去实践tdd,从而带来更多主动性去优化测试架构

james 19:01

后来尝试在成熟的架构上实践tdd,结果测试架构没有中间的演进优化过程。结果一个用例从一开始就很难写,团队就没人愿意写,除非你将测试例设定为交付标准

jame

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

说说TDD的好处和坏处-对话 的相关文章

  • 将 TDD 回顾性应用到 C# 代码库中的最佳选择

    我有一个由 5 个 C 库组成的现有框架 该框架自 2006 年以来一直得到很好的使用 并且是我的大多数项目的主要代码库 我的公司出于软件质量的原因希望推出TDD 在学习了许多教程并阅读了理论之后 我了解了 TDD 的好处 时间不是无限的
  • TDD 如何处理模拟对象中的更改

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

    我正在开发一个具有相当大的 PHP 代码库的新项目 该应用程序使用了相当多的 PHP 常量 define FOO bar 特别是对于数据库连接参数之类的事情 这些常量都定义在一个配置文件中 该文件是require once 基本上应用程序中
  • Scrum Burndown 问题 [已关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我们使用 Scrum 已经大约 9 个月了 并且基本上取得了成功 然而 我们的燃尽图很少看起来像 模型 图 而是更像是可怕的过山车 其中有一些导
  • C 编程和 TDD

    测试驱动开发仅限于面向对象吗 或者将它与过程语言结合使用是否可能 有用 接下来的几周我必须开始一个更大的 C 项目 我正在考虑如何开发 TDD 是一个design范例 因此不依赖于任何特定的编程范例 简而言之 在编写代码之前先为代码编写测试
  • 如何使用 MOQ 对象测试 Ninject ConstructorArguments?

    我最近一直在做我的第一个测试驱动开发项目 并一直在学习 Ninject 和 MOQ 这是我第一次尝试这一切 我发现 TDD 方法发人深省 Ninject 和 MOQ 也很棒 我正在从事的项目并不是特别适合 Ninject 因为它是一个高度可
  • 在代码中与在脚本中生成集成测试数据[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 这个问题很可能是基于意见的 但我确信 有确凿论据支持的观点将为明智的决策铺平道路 我确实喜欢使用 Autofixture 生成数据库状态 我真诚
  • 关于*管理*测试驱动和/或敏捷开发的最佳具体“操作手册”? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一本易于理解的书来呈现给我的老板 团队 背景资料 我们越来越多的工作会议让我的老板 团队思考
  • 分布式开发团队 - 所需工具[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一个开发团队分布在全球不同时区 在这样的团队中实现最大生产力的最佳工具是什么 我在寻找 源代码控制
  • “自动测试/rails [...]不[...]存在。正在中止”

    我发现自动测试已停止工作 autotest loading autotest rails Autotest style autotest rails doesn t seem to exist Aborting 根据这篇博文 http ww
  • YAGNI 在编写测试时也适用吗?

    当我编写代码时 我只编写我需要的函数 这种方法也适用于编写测试吗 为了安全起见 我应该提前为我能想到的每个用例编写测试 还是应该只为遇到的用例编写测试 我认为当你编写一个方法时 你应该测试预期的和潜在的错误路径 这并不意味着您应该扩展您的设
  • 如何TDD UIGestureRecognizers?

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

    如何使用 doctest unittest nose 等测试框架测试 Python 脚本的 STDOUT 输出 例如 假设运行我的脚本 todo py list 应该返回 取出垃圾 我读过有人将脚本的 STDOUT 打印部分与生成要打印的输
  • 存根方法时出现 InvalidUseOfMatchersException

    我有这个 TestNG 测试方法代码 InjectMocks private FilmeService filmeService new FilmeServiceImpl Mock private FilmeDAO filmeDao Bef
  • Python 是否有首选的 BDD 风格单元测试框架?

    我想知道是否有任何 BDD 风格的 描述它 Python 单元测试框架可以维护并准备好投入生产 我已经发现describe https pypi python org pypi describe 0 1 2 但似乎没有维护 也没有文档 我也
  • 在哪里可以获得有关 Java FitNesse 和 Slim 的一些教程? [关闭]

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

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 敏捷开发与迭代增量开发有什么区别 敏捷是否被视为迭代和增量 一些信息表明敏捷是最新的迭代和增量 我需要对此做出明确的澄清 迭代 你不可能一次性完
  • 我应该更改单元测试的命名约定吗?

    我目前对单元测试使用一个简单的约定 如果我有一个名为 EmployeeReader 的类 我将创建一个名为 EmployeeReader Tests 的测试类 然后 我在测试类中为该类创建所有测试 名称如下 Reading Valid Em
  • 敏捷开发;在线免费工具! [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我们一直在寻求在地理上分散的开发团队中实施敏捷方法 因此我需要有关您使用过并认为有用的任何免费在线应用程序的建议 现在我们使用纸卡和墙来管
  • 使用机器人框架进行 ATDD

    我想听听其他人使用 Robot Framework 进行自动化验收测试的经验 它的主要优点和缺点是什么以及与其他框架 主要是 Fitnesse 和 Selenium 的比较 将测试的代码是实时的遗留代码 主要是 C 语言 在我撰写本文时 我

随机推荐

  • Linux·C/C++主线程对子线程的影响

    这篇文章主要介绍了简单了解C语言中主线程退出对子线程的影响 文中通过示例代码介绍的非常详细 对大家的学习或者工作具有一定的参考学习价值 需要的朋友可以参考下 对于程序来说 如果主进程在子进程还未结束时就已经退出 那么Linux内核会将子进程
  • Android几种定时任务实现方式汇总

    目录 前言 方式一 AlarmManager API19之前AlarmManager常用的一些方法 参数说明 使用举例 AlarmManager实例Demo讲解 包含版本适配以及高版本设置重复闹钟 AlarmManager总结 方式二 Ha
  • 设计模式——责任链

    本文说明 在学习 Java EE互联网轻量级框架整合开发 此书时 里面提到了几种设计模式 我在学习这几种设计模式时写了笔记 放上来让大家共同学习 如果有错误 望指出 本章由两部分组成 1 基本概念 关键代码讲解 2 完整例子 基本概念 关键
  • WEB服务器如何确定哪个Servlet处理请求

    文章目录 一 WEB服务器 二 Servlet容器 三 Servlet生命周期 创建对象 初始化 处理请求 销毁 四 WEB服务器确定Servlet处理请求过程 一 WEB服务器 是指计算机和运行在它上面的服务器软件的总和 能提供网上信息浏
  • vue中实现ueditor上传图片遇到的几个问题及解决方案

    vue中实现ueditor上传图片功能 遇到的问题 初始化ue组件无法正常显示 无法加载 单图上传的图标变灰无法点击 or 多图上传显示后端配置项没有正常加载 上传插件不能正常使用 配置上传接口错误 请求报404 无法找到 上传后 服务端显
  • QT 信号和槽需要注意的几点

    connect 发出信号的对象指针 SIGNAL 信号函数原型 响应信号的对象 SLOT 槽函数原型 这里先说说信号及槽与普通成员函数有什么区别 只是定义的区域不同而已 信号函数需要声明在头文件的signals 关键字后面 无需实现 而槽则
  • c语言的标识符必须以字母或下划线开头,大一C语言选择题及答案

    第1章 C语言程序设计概述 一 选择题 1 以下叙述中正确的是 A A C语言程序中注释部分可以出现在程序中任意合适的地方 B 花括号 和 只能作为函数体的定界符 C 构成C语言程序的基本单位是函数 所有函数名都可以由用户命名 D 分号是C
  • pandas 用read_csv读取txt文件时,部分行丢失

    用pandas 的 read csv 来读取txt文件时 出现了部分行丢失的情况 原因是某行中有单个英文引号 导致 n换行符失效 多行连成了一行 直到遇到下一个单个引号 例如 txt文件如下 这里有一个未闭合的引号 就是它 这是正常的第二行
  • 丑数 打表+二分查找

    1010 只包含因子2 3 5 的数 题目链接 http www 51nod com Challenge Problem html problemId 1010 引用知识 https baike baidu com item E4 B8 9
  • DevOps系列之 —— 持续开发与集成(六)静态代码检查

    DevOps系列之 DevOps概览 一 软件产业和交付模式发展趋势 DevOps系列之 DevOps概览 二 新型软件技术及交付模式 DevOps系列之 DevOps概览 三 DevCloud HE2E DevOps 框架及其主要服务 D
  • Python头歌合集(题集附解)

    目录 一 Python初识 基本语法 第1关 Hello Python 第2关 我想看世界 第3关 学好Python 第4关 根据圆的半径计算周长和面积 第5关 货币转换 二 turtle简单绘图 第1关 英寸与厘米转换 第2关 绘制等边三
  • java使用easyExcel实现Excel导入和导出

    1 引入依赖
  • CSV文件 分类

    org deeplearning4j examples dataexamples BasicCSVClassifier 数据格式 一定要搞清楚数据格式 输入输出 才能构建网络 对应的是你手头有什么 想要做什么 预测什么 训练日志 这个例子只
  • 第六章:string类

    系列文章目录 文章目录 系列文章目录 前言 为什么学习string类 C语言中的字符串 ASCII Unicode UTF 8 UTF 16 UTF 32 GBK 标准库中的string类 string类 总结 string类的常用接口说明
  • ubuntu环境下 nginx 怎么配置文件

    文章目录 nginx安装 nginx启动 nginx打开 nginx配置 nginx安装 首先是安装nginx 环境依然是ubuntu12 04 64位 通过下面命令 sudo apt get install nginx nginx启动 安
  • Cotex-M0中断及与Cotex-M3的对比

    注 本文内容主要参考cortex M0 权威指南 Cotex M0处理器内置了中断控制器 并且最多支持32个中断请求 IRQ 输入 以及1 个不可屏蔽中断 NMI 输入 另外Cotex M0处理器还支持多个内部异常 而 Cortex M3中
  • android 框架组件,剖析 Android 架构组件之 ViewModel

    本文主要分析 ViewModel 的以下3个方面 获取和创建过程 Configuration Changes 存活原理 销毁过程 1 依赖库implementation androidx fragment fragment 1 0 0 im
  • Uncaught SyntaxError: missing ) after argument list 错误解决

    前一个星期随便玩玩的时候 在jsp里的 a 超链接 a 传递参数请求ajax的时候出现了Uncaught SyntaxError missing after argument list这个错误 去网上查询这个错误 发现是丢失 导致的问题 但
  • 2023年五一杯数学建模A题无人机定点投放问题求解全过程论文及程序

    2023年五一杯数学建模 A题 无人机定点投放问题 原题再现 随着科学技术的不断发展 无人机在许多领域都有着广泛的应用 对于空中执行定点投放任务的无人机 其投放精度不仅依赖于无人机的操作技术 而且还与无人机执行任务时所处状态和环境有关 例如
  • 说说TDD的好处和坏处-对话

    小帆 17 20 谁来科普下TDD的好处和坏处是啥 我们市场VP听说了TDD以后情有独钟 但是大致看了一些好像很难推广 菌菌 17 21 好处是大大的 坏处是成本很高 罗耀秋 17 22 你自己开发写代码 你愿意这样干不 小帆 17 23