谁有办法解决这个共同的需求。
我的申请里有一门课。
有些方法是公共的,因为它们是 API 的一部分, 还有一些是私有的,因为它们用于内部使用,使内部流程更具可读性
现在,假设我想编写一个单元测试,或者更像是一个集成测试,它将位于一个不同的包中,这个包允许调用这个方法,但是,如果你试图从应用程序本身的类中调用这个方法,那么对这个方法的普通调用是不允许的
所以,我在考虑类似的事情
public class MyClass {
public void somePublicMethod() {
....
}
@PublicForTests
private void somePrivateMethod() {
....
}
}
上面的注释将私有方法标记为“ public for test” which means, that compilation and runtime will be allowed for any class which is under the test... package , while compilation and\or runtime will fail for any class which is not under the test package.
有什么想法吗? 有这样的注释吗? 还有更好的办法吗?
似乎您编写的单元测试越多,打破封装的强制性就越多... ..。