�e�X�g�Z�@�̗���x���`�F�b�N���܂��B���L�̖��Ɋւ��ē��Ă͂܂���̂�1�I��Ń`�F�b�N����ꂽ��A���́u��GO�v�{�^�����N���b�N���Ă��������B
�y���1�z �C���^�[�t�F�[�X�̃��b�N��ݒ肷��ɂ́A�ȉ��̂ǂ�Interceptor���g�������ł��傤���H �q���g�F���b�N���쐬���邽�߂̐ݒ����Q�Ƃ��Ă��������B
�y���2�z �C���^�[�t�F�[�X�̃��\�b�h�ɖ߂�l��ݒ肷��MockInterceptor�̃��\�b�h�͈ȉ��̂ǂ�ł��傤���H �q���g�F���b�N���쐬���邽�߂̐ݒ����Q�Ƃ��Ă��������B
�y���3�z MockInterceptor#isInvoked()�͉��肷�郁�\�b�h�ł��傤���H �q���g�F���b�N���쐬���邽�߂̐ݒ����Q�Ƃ��Ă��������B
�y���1�z ������[1]�ɓ��錾�t�͂ǂ�ł��傤���H �C���^�[�t�F�[�X�̃��b�N���쐬����ɂ́A�C���^�[�t�F�[�X�ɑ��Đݒ肵��MockInterceptor��[1]���Ďg�p���܂��B �q���g�F���b�N�̎g�p���@���Q�Ƃ��Ă��������B
�y���2�z public interface Hello { public String showMessage(String str); } ��L�̃C���^�[�t�F�[�X��showMessage()���\�b�h���Ăяo���ꂽ�Ƃ���"Hello"��Ԃ��悤�ɃR���|�[�l���g��`�Ń��b�N���쐬����ꍇ�A �ȉ��̒�`��[1]�ɓ���^�O�͂ǂ�ł��傤���H
<component class="examples.aop.Hello"> <aspect> <component class="org.seasar.framework.aop.interceptors.MockInterceptor"> <initMethod name="setReturnValue"> [1] <initMethod> </component> </aspect> </component>
�y���3�z public interface Hello { public String showMessage(String str); } ��L���\�b�h�ɑ���dicon�t�@�C�����g�p������Java�Ń��b�N���`�����ꍇ�A���\�b�h���Ăяo�����Ƃ��� �����̒l�𐳂����\������R�[�h�͂ǂ�ł��傤���H
�y���1�z S2Unit���g�p����ꍇ�A�ǂ̃N���X���p�����ăe�X�g�N���X���쐬����ł��傤���H �q���g�FS2Unit���g�����e�X�g�N���X�̍쐬���@���Q�Ƃ��Ă��������B
�y���1�z S2Unit���g�p����e�X�g�N���X�Ŏ����I��S2Container�����������̂͂ǂ��ł��傤���H �q���g�FS2Unit�@�\��S2Container�̎����������Q�Ƃ��Ă��������B
�y���1�z S2Unit�ɂ́AS2Container�ɑ��郁�\�b�h���p�ӂ���Ă��܂����A�p�ӂ���Ă��Ȃ����\�b�h�͂ǂ�ł��傤���H �q���g�FS2Unit�@�\��register(),getComponent(),include()���\�b�h���Q�Ƃ��Ă��������B
�y���1�z S2Unit��dicon�t�@�C����ǂݍ��݂����ꍇ�Ɏg�����\�b�h�͂ǂ�ł��傤���H �q���g�FS2Unit�@�\��register(),getComponent(),include()���\�b�h���Q�Ƃ��Ă��������B
�y���2�z S2Unit���g�p���Ă���aaa.bbb.CccTest�e�X�g�N���X��aaa/bbb/hoge.dicon���C���N���[�h����ꍇ�A�������̂͂ǂ�ł��傤���H �q���g�FS2Unit�@�\��include����PATH�̏ȗ� ���Q�Ƃ��Ă��������B
�y���1�z
<component name="TestA" class="java.lang.String"> <arg>"Hello"<arg> </component>
�y���2�z
<component name="testB" class="java.lang.String"> <arg>"Hello"</arg> </component> <component name="testA" class="java.lang.String"> <arg>"world"</arg> </component>
�y���1�z ����e�X�g���\�b�h�ɂ����ʂ̏������������s�������ꍇ�̐��������\�b�h��`�͈ȉ��̂ǂ�ł��傤�H �q���g�FS2Unit�@�\��setUpXxx(),tearDownXxx()���\�b�h���Q�Ƃ��Ă��������B
�y���2�z S2Unit���g�p����e�X�g�N���X�ňȉ��̂悤��String�^�̕ϐ�str��testHello()���\�b�h������"Hello"������ݒ肵�����ꍇ�A ���̐ݒ���s�����\�b�h�̒�`�Ő������̂͂ǂ�ł��傤���H private String str; public void testHello() throws Exception { �F } �q���g�FS2Unit�@�\��setUpXxx(),tearDownXxx()���\�b�h���Q�Ƃ��Ă��������B
�y���3�z ����e�X�g���\�b�h�ɂ����ʂ̏I���������s�������ꍇ�̐��������\�b�h��`�͈ȉ��̂ǂ�ł��傤�H �q���g�FS2Unit�@�\��setUpXxx(),tearDownXxx()���\�b�h���Q�Ƃ��Ă��������B
�y���4�z testHello���\�b�h�ɑΉ�����tearDownHello���\�b�h�͂ǂ̃^�C�~���O�Ŏ��s�����ł��傤�H �q���g�FS2Unit�@�\��setUpXxx(),tearDownXxx()���\�b�h���Q�Ƃ��Ă��������B
�y���1�z �e�X�g���\�b�h�̒��O�Ƀg�����U�N�V�������J�n���A�e�X�g�ōs�������������[���o�b�N���邽�߂ɂ̓e�X�g���\�b�h�����ǂ̂悤�ɂ���悢�ł��傤���H �q���g�FS2Unit�@�\���g�����U�N�V�����������Q�Ƃ��Ă��������B
�y���1�z DataSet�Ɍ��ؗp��Excel�f�[�^��ǂݍ��ރ��\�b�h�͂ǂ�ł��傤���H �q���g�FS2Unit�@�\��readXls()���\�b�h���Q�Ƃ��Ă��������B
�y���2�z ���ؗp��Excel�f�[�^��aaa/bbb/getEmployee.xls�ɂ���ꍇ�AreadXls()���������Ȃ���`���@�͂ǂ�ł��傤���H �e�X�g�N���X�́Aaaa.bbb.EmployeeTest�Ƃ���B �q���g�FS2Unit�@�\��readXls()���\�b�h���Q�Ƃ��Ă��������B
�y���1�z assertEquals()���\�b�h�ŗ\�z�����DataSet�̌��ʂɑ��Ĕ�r�ł��Ȃ����̂͂ǂ�ł��傤���H �q���g�FS2Unit�@�\��assertEquals()���\�b�h���Q�Ƃ��Ă��������B
�y���2�z public interface EmployeeDao { public Class BEAN = Employee.class; public List getAllEmployees(); } ��L��DAO��getAllEmployees()���\�b�h�̌��ʂɑ��ăe�X�g���s���ꍇ�A S2Unit���g�p����e�X�g�N���X�ŗ\�z�����DataSet���g����assertEquals()���\�b�h �Ŕ�r������@���������̂͂ǂ�ł��傤���H �������\�z�����DataSet�̕ϐ�����expected�AgetAllEmployees()���\�b�h�Ŏ擾����List �̕ϐ�����employees�Ƃ���B �q���g�FS2Unit�@�\��assertEquals()���\�b�h���Q�Ƃ��Ă��������B
�y���1�z DataSet�̒��g���v���C�}���[�L�[�Ń����[�h���ĐV����DataSet���擾����reload()�̐�������`�͂ǂ�ł��傤���H �q���g�FS2Unit�@�\��reload()���\�b�h���Q�Ƃ��Ă��������B
�y���2�z �v���C�}���[�L�[�Ń����[�h���ĐV����DataSet���擾����reload()�Ńv���C�}���[�L�[�̎w��ɂ��āA �����������͂ǂ�ł��傤���H �q���g�FS2Unit�@�\��reload()���\�b�h���Q�Ƃ��Ă��������B
�y���1�z ���炩���ߏ��������e�X�g�p��Excel�f�[�^��DB�ɓo�^���郁�\�b�h�͂ǂ�ł��傤���H �q���g�FS2Unit�@�\��readXlsWriteDb(),readXlsAllReplaceDb()���\�b�h���Q�Ƃ��Ă��������B
�y���2�z ���炩���ߏ��������e�X�g�p��Excel�f�[�^��aaa/bbb/getEmployee.xls�ɂ���ꍇ�AreadXlsWriteDb()�̐�������`���@�͂ǂ�ł��傤���H �e�X�g�N���X�́Aaaa.EmployeeTest�Ƃ���B �q���g�FS2Unit�@�\��readXlsWriteDb(),readXlsAllReplaceDb()���\�b�h���Q�Ƃ��Ă��������B
�y���3�z �e�[�u��A�̃e�X�g�p�̃f�[�^��Excel�t�@�C���ɍ쐬����readXlsAllReplaceDb()���\�b�h�ŁA����Excel�t�@�C���̓��e���e�[�u��A�Ɋi�[����ꍇ�AExcel�t�@�C���̍쐬���@�Ő������̂͂ǂ�ł��傤���H �������e�[�u��A�͊O���L�[�Ńe�[�u��B���Q�Ƃ��Ă���Ƃ���B �q���g�FS2Unit�@�\��readXlsWriteDb(),readXlsAllReplaceDb()���\�b�h���Q�Ƃ��Ă��������B
�y���1�z �ȉ��̕��͂�[1]��[2]�ɓ��錾�t�͂ǂ�ł��傤���H ���ؗp��Excel�t�@�C�����쐬����ꍇ�A�V�[�g���ɂ�[1]�A�V�[�g��1�s�ڂɂ�[2]���L�q���܂��B�܂��AN:1�̃}�b�s���O���Ă���ꍇ�́u[2]_�֘A�ԍ��v�̖��O�ŋL�q���܂��B�V�[�g��2�s�ڈȍ~�ɂ̓f�[�^���L�q���܂��B �q���g�F�e�X�g�Z�@��Excel�t�@�C���̍쐬���Q�Ƃ��Ă��������B
�y���2�z org.seasar.extension.dataset.impl.SqlReader�N���X���g���ăf�[�^�x�[�X�̃e�[�u���̓��e��DataSet�ɓǂݍ��܂���ꍇ�ASQL�����g�p���āA���̌��ʂ�DataSet�ɓǂݍ��܂��郁�\�b�h�͂ǂ�ł��傤���H �q���g�F�e�X�g�Z�@��Excel�t�@�C���̍쐬���Q�Ƃ��Ă��������B
�y���3�z aaa/bbb/Ccc�N���X�Ńf�[�^�x�[�X�̃e�[�u������ǂݍ���DataSet��Excel�t�@�C���ɏo�͂���ꍇ�Aorg.seasar.extension.dataset.impl.XlsWriter�N���X�ŏo�͐���w�肵�ďo�͂��܂����A�ȉ���XlsWriter�N���X�̃R���|�[�l���g��`��[1]�ɓ���o�͐�̃p�X�̎w����@�Ő������̂͂ǂ�ł��傤���H�o�͐��Excel�t�@�C����aaa/bbb/test.xls�Ƃ���B
<component class="org.seasar.extension.dataset.impl.XlsWriter" instance="prototype"> [1] </component>
�y���1�z S2DaoTestCase�̐����Ƃ��ĊԈ���Ă���̂͂ǂ�ł��傤���H �q���g�F�e�X�g�Z�@��S2DaoTestCase���Q�Ƃ��Ă��������B
�y���2�z S2DaoTestCase��S2Dao��SELECT���̌���(Bean)��Excel�t�@�C���Ɣ�r����Ƃ��A���ʂ�Bean�Ɉȉ��̂悤��COLUMN�A�m�e�[�V����������ꍇ�A Excel�t�@�C���̃V�[�g1�s�ڂɂ��̃J���������L�q���鏑�����Ő������̂͂ǂ�ł��傤���H public static final String employeeNumber_COLUMN = "EMPNO"; �q���g�F�e�X�g�Z�@��S2DaoTestCase���Q�Ƃ��Ă��������B