在哪里学习编写测试用例?

时间:2014-10-27 19:26:09

标签: java unit-testing

我是CS硕士生。在整个学习过程中,我用Java编写了许多课程项目。很快我就要毕业了。当我探索一些github项目时,我经常发现人们将项目组织为/main/test。我从来没有以这种方式组织它,即我总是拥有没有任何测试目录的源代码文件。我认为该文件夹通常包含我认为称为“测试用例”的文件。

由于我很快就会找到工作,所以我想了解生产质量代码。

我的问题:

  • 为什么人们经常拥有该文件夹?它包含什么?

  • 你能给我一个关于java测试实践的好教程的链接吗?那该怎么办?简而言之,我想了解/tests/文件夹的想法。

4 个答案:

答案 0 :(得分:3)

  

我经常发现人们将他们的项目组织为/ main和/ test

这是品味问题。不是100%肯定,但至少maven项目有这样的组织。

Maven: Introduction to the Standard Directory Layout开始,这将是项目布局:

src
  main
    java <-- your Java source code
    resources
    filters
    config
    scripts
    webapp
  test
    java <-- your unit tests for Java
    resources
    filters
  it
  assembly
  site
  

为什么人们经常拥有该文件夹?它包含什么?

通常,人们编写测试用例来覆盖代码并检查代码是否按预期工作。这称为Code Coverage。代码覆盖也可用作回归测试,以防有人对代码重构等代码进行更改。

您会发现它们的测试用例通常是Unit Testing。根据项目的类型,您还可以找到Integration Tests

还有Test Driven Development, or TDD,这是一种练习,其基础是在编写实际代码之前编写测试用例。

  

你能给我一个关于在java中测试的好教程的链接吗?

这是该网站的主题。网上有很多关于此的教程。

答案 1 :(得分:2)

我没有单独的文件夹,但通常人们将Unit Tests保留在该文件夹中。单元测试通常设置“假”数据来测试给定的类,以便开发人员可以轻松地调试任何问题。

答案 2 :(得分:0)

人们提供/ test文件夹的原因是包含他们项目的单元测试。

测试Java的方法确实很多,但JUnit是一种非常常用的测试方法。

答案 3 :(得分:0)

为代码编写测试是一种很好的做法。首先写Unit Tests。我发现this tutorial非常有用。编写测试可确保您的代码按预期运行,测试极端情况并在将来添加新代码不会破坏现有功能。

还有像JMockMockito这样的模拟框架,可以轻松地为您的方法编写存根和驱动程序。

更有趣的是人们更喜欢在编写实际实现之前编写测试。此方法称为Test Driven DevelopmentExtreme Programming。编写测试首先要确保已经为方法准备了准备代码或伪代码。