java - 测试类扩展被测试的类是 Java 开发中常见/可接受的模式吗?

标签 java design-patterns testing subclass extends

answer中对于我提出的一个问题,建议我通过创建一个旨在测试主类(C)作为 C 的子类的类(test_C)来解决特定(不相关)问题:

public class test_C extends C {
  1. 这是 Java 开发中的常见模式吗?

  2. 是否有任何理由不对所有测试类使用此模式(假设我们在测试类和被测试类之间始终具有 1-1 映射)?

最佳答案

Are there any reasons NOT to use this pattern for all test classes (assume that we always have 1-1 mapping between test class and tested class)?

正在测试的类可以是最终类,以防止任何类对其进行子类化。

 public final class C { ... }

如果测试子类可行,它可能会无意或有意地改变被测试类的行为。

关于java - 测试类扩展被测试的类是 Java 开发中常见/可接受的模式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17334033/

相关文章:

java - Android MVP - 调用服务器

.net - 对于提供线程安全添加、删除、迭代集合到各种对象的包装器来说,最好的名称是什么?

python - 如何开始测试现有的 python 脚本?

testing - 在 redux Action 测试中出错

java - 在 Eclipse 中运行时从 pom 获取 maven 项目版本和工件 ID

java - 命令行上的 MVC

java - Mockito 模拟 SecurityManager 抛出异常

design-patterns - 什么是 System.Lazy<T> 和单例设计模式

qt - 将数据处理与 GUI 分开

perl+ VBA : raise click event on a button embedded in a Powerpoint slide