小编Nos*_*Nos的帖子

在Intellij中的项目之间共享数据库

我使用Intellij检查数据库,运行sql,查看表中的数据等.这一切都运行正常,但我唯一缺少的是能够定义这些数据源一次并在我的所有项目中查看它们,即我可以在其他项目之间共享它们项目而不必为新项目重新定义它们.这可能在Intellij?

database projects sharing intellij-idea

19
推荐指数
3
解决办法
3610
查看次数

Mockito Capture在捕获时不维护捕获列表

在Mockito中,存在捕获列表未返回预期结果的情况。测试用例:

  1. 我们将“点”添加到列表中
  2. 我们捕获列表
  3. 我们将“确定”添加到列表中。

在我们的断言中,我们只希望“ Pip”在那里,但“ Sok”也在那里。我们认为这是不正确的,因为捕获时“ Sok”不在列表中。

java.lang.AssertionError:
预期的:[Pip]
实际的:[Pip,Sok]

  • 有人对此有解决方案吗?
  • 这是Mockito中的错误还是功能?
  • 为什么Mockito保留对列表的引用,而没有在捕获时间复制列表?

这是测试用例:

@RunWith(MockitoJUnitRunner.class)
public class CaptureTest {

    @Captor
    private ArgumentCaptor<List> listCapture;

    @Mock
    private ListPrinter listPrinter;

    private TestClass testClass;

    @Before
    public void setUp() {
        testClass = new TestClass(listPrinter);
    }

    @Test
    public void testCapture() {
        testClass.simulateFailSituation();
        verify(listPrinter).printList(listCapture.capture());
        // THIS FAILS: Expected:[Pip],  Actual:[Pip, Sok]
        assertEquals(Collections.singletonList("Pip"), listCapture.getValue());
    }

    public class TestClass {

        private List list = new ArrayList();
        private ListPrinter listPrinter;

        public TestClass(ListPrinter listPrinter) {
            this.listPrinter = listPrinter;
        }

        private void …
Run Code Online (Sandbox Code Playgroud)

java unit-testing capture mockito

5
推荐指数
3
解决办法
1575
查看次数