【发布时间】:2018-06-19 17:57:13
【问题描述】:
我正在尝试执行以下代码。我的 IDE 告诉我
USER_ROLE_EMPLOYEE 无法解析为变量
这是我的代码:
public class TestUserHelper {
@Before
public void setUp() throws Exception {
String USER_ROLE_EMPLOYEE="Service Desk";
String USER_ROLE_MANAGER="Store Manager";
}
@Test
public void testIsUserRoleValidEmployee() {
Assert.assertTrue(UserValidator.validateSupervisor(USER_ROLE_EMPLOYEE));
}
@Test
public void testIsUserRoleValidSupervisor() {
Assert.assertTrue(UserValidator.validateSupervisor(USER_ROLE_MANAGER));
}
}
我收到一条错误消息,提示 USER_ROLE_EMPLOYEE, USER_ROLE_MANAGER 无法解析为变量。
我做错了什么?
【问题讨论】:
-
变量是setUp()方法的local变量。因此它们仅在该方法中可见。在询问错误时:总是阅读并发布准确且完整的错误消息
-
谢谢JB。你知道修复是什么吗?无论如何我仍然可以保留@Before并删除错误吗?
-
变量需要是instance变量。 stackoverflow.com/questions/16686488/…。或者,因为它们实际上是常量,所以是静态最终变量。
标签: java junit local-variables