version-control - 我应该什么时候提交并插入测试驱动开发?

标签 version-control tdd push commit

关闭。这个问题是off-topic .它目前不接受答案。












想改进这个问题? Update the question所以它是on-topic对于堆栈溢出。

9年前关闭。




Improve this question




我的问题是关于 TDD 的,我应该何时提交或推送更改?

我想知道在函数返回的某些值仍然是伪造的或实现明显通过测试但接口(interface)存在的情况下推送代码是否可以。
换句话说,我可以在编辑之前推送代码吗?或者以其他方式:我可以推送不改变“界面”但实际上还没有工作的代码吗?

我不是在谈论单元测试,而是更多的一些集成/验收端到端测试,例如我从工具 A 获取一些数据,将其发送到工具 B 并检查是否创建了数据库记录。实现此类测试通常很耗时,并且最后包含许多断言,但推送早期版本的代码允许其他团队成员根据我们的工作部分工作。

感谢您提前回答这个问题。

最佳答案

开发工作流程始终是它所涉及的开发人员之间的某种共识,因此这里没有固定的规则。您需要与其他开发人员协调以找出最适合您的方法。

也就是说,我个人的做法是永远不要破坏远程主机。相反,一旦你有可以编译的东西(即使测试失败)就提交并推送到一个分支,然后在你的测试通过后与 master 合并,即只将工作代码推送到 master,但让你的非工作测试随时在 Twig 上。

如果你有任何类型的持续集成系统,这个工作流程确保你永远不会通过将一堆失败的测试推送到 CI 系统将要接受和测试的分支来破坏你的 CI 构建。

关于version-control - 我应该什么时候提交并插入测试驱动开发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16293353/

相关文章:

svn - 不同的版本控制系统如何处理二进制文件?

git - 如何确保提交作者

testing - 本地、测试和生产版本控制

git - 推送到 Heroku 被拒绝 - "failed to push some refs to ' heroku”

c# - 使用 WPF MVVM 推送组合框

version-control - 大学环境的最佳源代码控制(管理存储库的开销低)

tdd - 使用 TDD 进行项目实现估算

c# - 如何隔离 DbSet 等数据源?

Perl 单元测试——子例程可测试吗?

flutter - 在 Flutter 中推送新页面时,Navigator 堆栈上的页面会重建