@Test
public void testCopyFile03() throws Exception {

    // テスト対象のインスタンス化
    FileControlImpl fileControl = PowerMockito.spy(new FileControlImpl());
    // 引数の設定
    String classFileName = this.getClass().getSimpleName() + ".class";
    URL url = this.getClass().getResource(classFileName);
    String directoryPath = url.getPath().substring(0, url.getPath().length()
            - classFileName.length());
    String srcFile = directoryPath + "testCopyFile03_src.txt";
    String newFile = directoryPath + "testCopyFile03_new.txt";
    // テスト前、対象ファイルを初期化
    File file = new File(srcFile);
    file.delete();
    file.createNewFile();
    file = new File(newFile);
    file.delete();
    file.createNewFile();
    // 前提条件の設定
    String basePath = directoryPath;
    ReflectionTestUtils.setField(fileControl, "basePath", basePath);
    PowerMockito.mockStatic(FileUtility.class);
    ArgumentCaptor<String> fileUtilityStringArgumentCaptor = ArgumentCaptor
            .forClass(String.class);
    PowerMockito.doNothing().when(FileUtility.class, "copyFile",
            fileUtilityStringArgumentCaptor.capture(),
            fileUtilityStringArgumentCaptor.capture());
    Method getAbsolutePathMethod = PowerMockito.method(
            FileControlImpl.class, "getAbsolutePath", String.class);
    ArgumentCaptor<String> fileControlStringArgumentCaptor = ArgumentCaptor
            .forClass(String.class);
    PowerMockito.doCallRealMethod().when(fileControl, getAbsolutePathMethod)
            .withArguments(fileControlStringArgumentCaptor.capture());
    try {
        // テスト実施
        fileControl.copyFile(srcFile, newFile);
        // 返却値なし
        // 状態変化の確認
        PowerMockito.verifyPrivate(fileControl, Mockito.times(2)).invoke(
                getAbsolutePathMethod).withArguments(Mockito.anyString());
        List<String> fileControlStringArguments = fileControlStringArgumentCaptor
                .getAllValues();
        assertEquals(2, fileControlStringArguments.size());
        assertEquals(srcFile, fileControlStringArguments.get(0));
        assertEquals(newFile, fileControlStringArguments.get(1));
        PowerMockito.verifyStatic();
        FileUtility.copyFile(Mockito.anyString(), Mockito.anyString());
        List<String> fileUtilityStringArguments = fileUtilityStringArgumentCaptor
                .getAllValues();
        assertEquals(srcFile, fileUtilityStringArguments.get(0));
        assertEquals(newFile, fileUtilityStringArguments.get(1));
    } finally {
        // テスト後、対象ファイルを初期化
        file = new File(srcFile);
        file.delete();
        file = new File(newFile);
        file.delete();
    }
}