【发布时间】:2019-02-01 15:30:47
【问题描述】:
在我正在测试的应用程序(页面对象)中,我有很多代表用户屏幕的类。每个页面对象都包含不同数量的元素,其中每个元素都有一个 ID。我需要声明这些 ID。它看起来像这样:
public class MessagesScreen extends BasePage {
private static final String backArrowButtonID = PACKAGE_NAME_ID + "backArrow";
private static final String noMessagesImageID = PACKAGE_NAME_ID + "empty_messages_icon";
private static final String noMessagesTextViewI = PACKAGE_NAME_ID + "label_no_documents";
private static final String errorTextViewID = PACKAGE_NAME_ID + "text_error_response";
private static final String progressBarID = PACKAGE_NAME_ID + "message_list_progress_bar";
private static final String messagesRecyclerViewID = PACKAGE_NAME_ID + "messageList";
private static final String swipeRefreshLayoutID = PACKAGE_NAME_ID + "swipeRefreshLayout";
private static final String instantMessageLayoutID = PACKAGE_NAME_ID + "item_instant_message_layout";
}
每个 ID 都需要像上面那样添加一个环境变量。
我的问题是:有什么好办法不用一直重复这个PACKAGE_NAME_ID?有没有办法自动将常量字符串分配给每个新的类字段?
【问题讨论】:
-
您是否考虑过使用reflection?
-
你能告诉我们你在哪里使用它们吗?也许您可以在其中添加前缀?
-
你的代码绝对没有问题,停止寻找最好的方法,顺便说一句,静态变量应该是大写的,snake...
PROGRESS_BAR_ID