如何从java测试代码访问内部属性
我已经有了一些有财产标记为内部的类。 然后我尝试从java中的测试代码中设置属性。 我怎样才能访问这些属性? 测试代码和类代码都在同一个包中。
例:
class MainActivity : AppCompatActivity() { interal var someProperty = "test" }
测试代码:
@Test public void firstStartTest() { val activity = MainActivity() activity.setSomeProperty("something") //does not compile }
Android Studio建议使用activity.setSomeProperty $ production_sources_for_module_app(); 但是这也不能编译。
这两个类(MainActivity和测试类)都必须在一个模块中。 这是一个模块定义:
更具体地说,一个模块是一组编译在一起的Kotlin文件:
- 一个IntelliJ IDEA模块;
- Maven或Gradle项目;
- 一组调用Ant任务编译的文件。
https://kotlinlang.org/docs/reference/visibility-modifiers.html
这意味着,检查你的项目结构。