Mig*_*sma 5 android kotlin android-espresso
我发现在 Kotlin 中,可以在同一个包中拥有两个同名的类,但其中一个类位于 androidTest 文件夹中,并且在运行 Espresso 测试时,将使用这个类。这在 Java 下是不可能的,我想知道这是有意的行为还是由于其他原因。
图中,AppCollaborator,在Kotlin中存在于androidTest和main中,AS没有抱怨,但它对JavaCollaborator有抱怨。
事实上,这种行为对于在测试期间加倍某些类(API 等)非常有用,但我不知道我是否可以依赖它。
这是支持的,因为在输出构建文件夹中你有不同的子文件夹,例如
您的类文件存储在不同的目标文件夹中,但在运行时它们具有相同的完全限定名称,因为包和类名称相同。
这不是 kotlin 问题。这是正常的名称冲突。避免在测试和实施中使用相同的名称。通常测试已Test附加到其名称后。在你的情况下:JavaCollaboratorTest 
| 归档时间: | 
 | 
| 查看次数: | 2055 次 | 
| 最近记录: |