【问题标题】:Where and how can I learn software testing techniques?我在哪里以及如何学习软件测试技术?
【发布时间】:2010-01-17 17:09:32
【问题描述】:

我想学习如何构建旨在自我测试的“强大”软件。换句话说,我如何在我的软件中实现自动化测试(使用 java 或 groovy 或 c++ )。

所以我想知道在哪里学习这个(书籍或网站)以及我需要哪些工具和库?

【问题讨论】:

  • 好问题,但我认为这个话题有点。应该是“我在哪里以及如何学习自动化软件测试技术?”

标签: unit-testing testing tdd xunit


【解决方案1】:
  • 面向初学者的通用 TDD:Kent Beck:通过示例进行测试驱动开发
  • 通用单元测试参考:Gerard Meszaros:xUnit 测试模式:重构测试代码
  • 针对新建项目的 TDD:Steve Freeman,Nat Pryce:不断发展的面向对象软件,以测试为指导
  • 棕地项目的 TDD:Micheal Feathers:有效地使用旧代码
  • 测试问题问答:http://www.stackoverflow.com
  • Software list(向下滚动)

【讨论】:

    【解决方案2】:

    除了前面提到的测试驱动开发 (TDD) 技术之外,您还可以查看 design by contract,这是另一种技术,基本上,在生产代码中添加断言以在运行时验证 组件之间的合同条款(输入、输出和不变量)得到尊重。在交付软件时,可以删除或保留这些断言。

    我想补充一下我的答案,以明确 TDD 不会导致“旨在测试自身的软件”,而是一些软件 - 单元测试套件,与生产代码一起发展,可以测试另一个一块软件。

    【讨论】:

      【解决方案3】:

      【讨论】:

        【解决方案4】:

        JUnit,Java 的自动化测试工具,是真正启动的工具。 The JUnit site 是一个很好的起点。它收集了大量文章和测试工具的链接。

        【讨论】:

          【解决方案5】:

          我不知道“自我测试”部分,但我首先想到的是阅读测试驱动开发 (http://en.wikipedia.org/wiki/Test-driven_development) 并查看 JUnit。

          【讨论】:

            【解决方案6】:

            查看 xUnit 测试框架(cppUnit 用于 C++,JUnit 用于 Java)并查看精彩的书籍 xUnit Test Patterns: Refactoring Test Code

            如果您真的想参与其中,请查看test-driven development。一个很好的介绍是鲍勃叔叔的The Three Laws of TDDbowling game kata(另见bowling game episode)。关于这个主题的一本好书是Test Driven Development: By Example

            【讨论】:

              【解决方案7】:

              我发现The Art of Unit Testing by Roy Osherove 对理解单元测试、整数测试、TDD 等基础知识非常有帮助。它有点为 .Net 语言量身定制,但它也提供了关于自动化测试背后想法的非常好的信息。

              【讨论】:

                猜你喜欢
                • 2016-10-25
                • 2022-06-18
                • 1970-01-01
                • 2022-01-05
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多