Shiro 测试中的类型未定义方法 expect(boolean)
The method expect(boolean) is undefined for the type in Shiro test
我正在 Java 进行我的第一次测试,我有一个 Shiro Security...我按照教程 (https://shiro.apache.org/testing.html) 但是说:
(此示例使用 EasyMock,但 Mockito 也同样有效):
Subject subjectUnderTest = createNiceMock(Subject.class);
expect(subjectUnderTest.isAuthenticated()).andReturn(true);
因为我使用 Mockito 我用
实现
Subject mockSubject = mock(Subject.class);
expect(subjectUnderTest.isAuthenticated()).andReturn(true);
但是当我这样做的时候出现了这个错误
The method expect(boolean) is undefined for the type AdminControllerTest
并且不要给我导入它的可能性。我不知道 expect 是否特定于 EasyMock,如果是,我必须在 Mockito 中使用什么。
我在这里搜索并看到更多人这样做,并且总是推荐使用这个 expect
How to mock a shirosession?
如果我们看一下这个代码示例...
Subject mockSubject = mock(Subject.class);
expect(subjectUnderTest.isAuthenticated()).andReturn(true);
我们可以看到...
- 您正在使用
mockito
语法进行模拟。
- 您正在使用
easyMock
语法来配置模拟。它甚至不在依赖列表中,因此找不到此方法。
解决方案是使用 mockito 语法来配置 mock。
Subject mockSubject = mock(Subject.class);
when(mockSubject.isAuthenticated()).thenReturn(true);
这将使一切按预期工作,当调用 isAuthenticated()
方法时,您的 Subject
将 return true
。
如果你想升级你的 mockito 游戏,试试这个 resource,它带有工作 github 代码示例。
我正在 Java 进行我的第一次测试,我有一个 Shiro Security...我按照教程 (https://shiro.apache.org/testing.html) 但是说:
(此示例使用 EasyMock,但 Mockito 也同样有效):
Subject subjectUnderTest = createNiceMock(Subject.class);
expect(subjectUnderTest.isAuthenticated()).andReturn(true);
因为我使用 Mockito 我用
实现Subject mockSubject = mock(Subject.class);
expect(subjectUnderTest.isAuthenticated()).andReturn(true);
但是当我这样做的时候出现了这个错误
The method expect(boolean) is undefined for the type AdminControllerTest
并且不要给我导入它的可能性。我不知道 expect 是否特定于 EasyMock,如果是,我必须在 Mockito 中使用什么。
我在这里搜索并看到更多人这样做,并且总是推荐使用这个 expect
How to mock a shirosession?
如果我们看一下这个代码示例...
Subject mockSubject = mock(Subject.class);
expect(subjectUnderTest.isAuthenticated()).andReturn(true);
我们可以看到...
- 您正在使用
mockito
语法进行模拟。 - 您正在使用
easyMock
语法来配置模拟。它甚至不在依赖列表中,因此找不到此方法。
解决方案是使用 mockito 语法来配置 mock。
Subject mockSubject = mock(Subject.class);
when(mockSubject.isAuthenticated()).thenReturn(true);
这将使一切按预期工作,当调用 isAuthenticated()
方法时,您的 Subject
将 return true
。
如果你想升级你的 mockito 游戏,试试这个 resource,它带有工作 github 代码示例。