![]() |
1
8
如果您使用的是最先进的单元测试框架,我不理解这种说法
如果将子类的一个实例交给您的单元测试(针对父类的一个实例编写),那么它们的工作应该是不变的。 假如 您的子类没有以破坏继承方法上的契约的方式重写父类行为的某些方面。这正是你需要测试的,不是吗? 如果您担心运行测试所需的时间,我将再次检查以确保您的测试是分区的,这样您就可以根据正在积极工作的内容有选择地运行测试(但仍然定期运行完整的产品组合以捕获意外的依赖项)。 |
![]() |
2
8
我认为写一个继承有效的测试是浪费时间。如果您尝试使用基类方法,编译器将检查这些方法是否可用,假设您不使用IntelliSense进行捕获。我可能会在一个子类中测试行为,然后只在修改行为的每个子类中(或者行为所依赖的某个状态)进行测试。 |
![]() |
3
6
使您的测试继承自一个基类测试,大致类似于这样。
大多数流行的测试框架在运行子类测试时都会在基本测试中运行测试方法。 |
![]() |
4
5
你不想测试对象的类型, 除非 它来自一个非类型化的工厂方法。否则,您将针对C编译器编写一个单元测试,这不是您想要做的。 |
![]() |
5
1
C编译器会为您处理这种检查。 如果你喜欢,你可以写一些像:
|
![]() |
6
1
我认为你的测试结构应该反映你的对象结构 所以如果你有继承自类车的类车 那么您应该有从类testVehicle继承的类testcar 通过执行此测试,车辆将自动继承所有车辆测试的正确测试,这意味着如果在车辆中覆盖该功能,则很可能会破坏测试,突出显示需要在车辆中进行覆盖测试以支持新行为,如果测试未被破坏,则覆盖可能首先是多余的 如
注: 只应在测试继承的对象时使用继承,而不仅仅是因为要对10个不相关的对象执行相同的测试。如果您想这样做,我建议您使用一个静态助手类 |
![]() |
7
0
有两种方法可以用来测试 行为 基本类的:
不要费心验证继承是否真的有效(整个
|
|
wavesinaroom · 断言结构向量长度 6 月前 |
![]() |
Tim Kirkwood · 比较空数据帧 7 月前 |
![]() |
Kamran Khan · 使用单元测试ASP。NET核心 11 月前 |
![]() |
paymer · 为什么我的代码没有删除我的单元测试生成的zip文件? 1 年前 |
![]() |
Ricky Mo · 角度测试如何模拟导入的const 1 年前 |
![]() |
Natty · Visual Studio中缺少“代码覆盖率结果” 1 年前 |