java - 如何测试一个java软件?

标签 java unit-testing testing white-box-testing

我们已经分配了一个开源软件来测试! 该软件有3个包,每个包有10个或更多的类,每个类可能有几十个方法。

我的问题是,在开始结构(白盒)测试之前,我是否需要了解软件中的每一行代码?

我需要了解从 main() 方法开始的整个程序流程吗?

我应该采取什么方法?

最佳答案

如果您对每个方法应该做什么有规范:指定输入的预期输出是什么,那么您不需要深入了解这些方法的实现细节。通常这应该写下来!

您可以编写单元测试来检查方法是否满足预定义的契约(如果它们存在)。

如果您没有规范或最近的趋势“UserStories”,您需要“对您的规范进行逆向工程”:) 您需要分析每个方法以了解它在做什么,接下来您将检查这些方法在哪里被调用是为了弄清楚在方法调用中传递的可能值是什么。同样从调用方法中,您可能会了解什么是极端情况。以及您绝对想测试的那些。

....慢慢地你学会了整个代码:)

关于java - 如何测试一个java软件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34030571/

相关文章:

javascript - React 单元测试 onClick 方法中的 Mock Fetch API

java - 用于模拟的可编程 JDBC 驱动程序

Java单元测试,从循环断言中获取更多数据

无注入(inject)测试

c# - 为什么 ReactiveTest 不遵守此测试中的滴答计数

java - 表达式语言中的日历对象

java - 如何从不同线程使用 java.util.logging.Logger?

java - 在 Java 中导入 Scala : weird classes & methods showing

java - POI 公式评估器 IFERROR

ruby - 如何使用 Ruby 学习 TDD?