接口的使用
org.springframework.test.context.TestContext
使用TestContext的程序包 程序包 说明 org.springframework.test.context This package contains the Spring TestContext Framework which provides annotation-driven unit and integration testing support that is agnostic of the actual testing framework in use.org.springframework.test.context.event Test event support classes for the Spring TestContext Framework.org.springframework.test.context.jdbc JDBC support classes for the Spring TestContext Framework, including support for declarative SQL script execution via@Sql.org.springframework.test.context.support Support classes for the Spring TestContext Framework.org.springframework.test.context.transaction Transactional support classes for the Spring TestContext Framework.org.springframework.test.context.web Web support classes for the Spring TestContext Framework.org.springframework.test.context中TestContext的使用
返回TestContext的org.springframework.test.context中的方法 修饰符和类型 方法 说明 TestContextTestContextBootstrapper. buildTestContext()Build theTestContextfor theBootstrapContextassociated with this bootstrapper.TestContextTestContextManager. getTestContext()Get theTestContextmanaged by thisTestContextManager.参数类型为TestContext的org.springframework.test.context中的方法 修饰符和类型 方法 说明 default voidTestExecutionListener. afterTestClass(TestContext testContext)Post-processes a test class after execution of all tests within the class.default voidTestExecutionListener. afterTestExecution(TestContext testContext)Post-processes a test immediately after execution of thetest methodin the suppliedtest context— for example, for timing or logging purposes.default voidTestExecutionListener. afterTestMethod(TestContext testContext)Post-processes a test after execution of after lifecycle callbacks of the underlying test framework — for example, by tearing down test fixtures.default voidTestExecutionListener. beforeTestClass(TestContext testContext)Pre-processes a test class before execution of all tests within the class.default voidTestExecutionListener. beforeTestExecution(TestContext testContext)Pre-processes a test immediately before execution of thetest methodin the suppliedtest context— for example, for timing or logging purposes.default voidTestExecutionListener. beforeTestMethod(TestContext testContext)Pre-processes a test before execution of before lifecycle callbacks of the underlying test framework — for example, by setting up test fixtures.default voidTestExecutionListener. prepareTestInstance(TestContext testContext)Prepares thetest instanceof the suppliedtest context, for example by injecting dependencies.类型变量类型为TestContext的org.springframework.test.context中的方法参数 修饰符和类型 方法 说明 default voidTestContext. publishEvent(Function<TestContext,? extends ApplicationEvent> eventFactory)Publish theApplicationEventcreated by the giveneventFactoryto the application context for this test context.org.springframework.test.context.event中TestContext的使用
返回TestContext的org.springframework.test.context.event中的方法 修饰符和类型 方法 说明 TestContextTestContextEvent. getSource()Get theTestContextassociated with this event.TestContextTestContextEvent. getTestContext()Alias forTestContextEvent.getSource().参数类型为TestContext的org.springframework.test.context.event中的方法 修饰符和类型 方法 说明 voidEventPublishingTestExecutionListener. afterTestClass(TestContext testContext)voidEventPublishingTestExecutionListener. afterTestExecution(TestContext testContext)voidEventPublishingTestExecutionListener. afterTestMethod(TestContext testContext)voidEventPublishingTestExecutionListener. beforeTestClass(TestContext testContext)voidEventPublishingTestExecutionListener. beforeTestExecution(TestContext testContext)voidEventPublishingTestExecutionListener. beforeTestMethod(TestContext testContext)voidEventPublishingTestExecutionListener. prepareTestInstance(TestContext testContext)参数类型为TestContext的org.springframework.test.context.event中的构造器 构造器 说明 AfterTestClassEvent(TestContext source)AfterTestExecutionEvent(TestContext source)AfterTestMethodEvent(TestContext source)BeforeTestClassEvent(TestContext source)BeforeTestExecutionEvent(TestContext source)BeforeTestMethodEvent(TestContext source)PrepareTestInstanceEvent(TestContext source)TestContextEvent(TestContext source)Create a newTestContextEvent.org.springframework.test.context.jdbc中TestContext的使用
参数类型为TestContext的org.springframework.test.context.jdbc中的方法 修饰符和类型 方法 说明 voidSqlScriptsTestExecutionListener. afterTestMethod(TestContext testContext)Execute SQL scripts configured via@Sqlfor the suppliedTestContextafter the current test method.voidSqlScriptsTestExecutionListener. beforeTestMethod(TestContext testContext)Execute SQL scripts configured via@Sqlfor the suppliedTestContextbefore the current test method.org.springframework.test.context.support中TestContext的使用
实现TestContext的org.springframework.test.context.support中的类 修饰符和类型 类 说明 classDefaultTestContextDefault implementation of theTestContextinterface.返回TestContext的org.springframework.test.context.support中的方法 修饰符和类型 方法 说明 TestContextAbstractTestContextBootstrapper. buildTestContext()Build a newDefaultTestContextusing the test class in theBootstrapContextassociated with this bootstrapper and by delegating toAbstractTestContextBootstrapper.buildMergedContextConfiguration()andAbstractTestContextBootstrapper.getCacheAwareContextLoaderDelegate().参数类型为TestContext的org.springframework.test.context.support中的方法 修饰符和类型 方法 说明 voidAbstractTestExecutionListener. afterTestClass(TestContext testContext)The default implementation is empty.voidDirtiesContextTestExecutionListener. afterTestClass(TestContext testContext)If the test class of the supplied test context is annotated with@DirtiesContextand the class mode is set toAFTER_CLASS, the application context of the test context will be marked as dirty, and theREINJECT_DEPENDENCIES_ATTRIBUTEin the test context will be set totrue.voidAbstractTestExecutionListener. afterTestExecution(TestContext testContext)The default implementation is empty.voidAbstractTestExecutionListener. afterTestMethod(TestContext testContext)The default implementation is empty.voidDirtiesContextTestExecutionListener. afterTestMethod(TestContext testContext)If the current test method of the supplied test context is annotated with@DirtiesContextand the method mode is set toAFTER_METHOD, or if the test class is annotated with@DirtiesContextand the class mode is set toAFTER_EACH_TEST_METHOD, the application context of the test context will be marked as dirty and theREINJECT_DEPENDENCIES_ATTRIBUTEin the test context will be set totrue.protected voidAbstractDirtiesContextTestExecutionListener. beforeOrAfterTestClass(TestContext testContext, DirtiesContext.ClassMode requiredClassMode)Perform the actual work forAbstractTestExecutionListener.beforeTestClass(org.springframework.test.context.TestContext)andAbstractTestExecutionListener.afterTestClass(org.springframework.test.context.TestContext)by dirtying the context if appropriate (i.e., according to the required mode).protected voidAbstractDirtiesContextTestExecutionListener. beforeOrAfterTestMethod(TestContext testContext, DirtiesContext.MethodMode requiredMethodMode, DirtiesContext.ClassMode requiredClassMode)Perform the actual work forAbstractTestExecutionListener.beforeTestMethod(org.springframework.test.context.TestContext)andAbstractTestExecutionListener.afterTestMethod(org.springframework.test.context.TestContext)by dirtying the context if appropriate (i.e., according to the required modes).voidAbstractTestExecutionListener. beforeTestClass(TestContext testContext)The default implementation is empty.voidDirtiesContextBeforeModesTestExecutionListener. beforeTestClass(TestContext testContext)If the test class of the supplied test context is annotated with@DirtiesContextand the class mode is set toBEFORE_CLASS, the application context of the test context will be marked as dirty, and theREINJECT_DEPENDENCIES_ATTRIBUTEin the test context will be set totrue.voidAbstractTestExecutionListener. beforeTestExecution(TestContext testContext)The default implementation is empty.voidAbstractTestExecutionListener. beforeTestMethod(TestContext testContext)The default implementation is empty.voidDependencyInjectionTestExecutionListener. beforeTestMethod(TestContext testContext)If theDependencyInjectionTestExecutionListener.REINJECT_DEPENDENCIES_ATTRIBUTEin the suppliedtest contexthas a value ofBoolean.TRUE, this method will have the same effect asprepareTestInstance(); otherwise, this method will have no effect.voidDirtiesContextBeforeModesTestExecutionListener. beforeTestMethod(TestContext testContext)If the current test method of the supplied test context is annotated with@DirtiesContextand the method mode is set toBEFORE_METHOD, or if the test class is annotated with@DirtiesContextand the class mode is set toBEFORE_EACH_TEST_METHOD, the application context of the test context will be marked as dirty and theREINJECT_DEPENDENCIES_ATTRIBUTEin the test context will be set totrue.protected voidAbstractDirtiesContextTestExecutionListener. dirtyContext(TestContext testContext, DirtiesContext.HierarchyMode hierarchyMode)Mark the application context of the supplied test context as dirty and setREINJECT_DEPENDENCIES_ATTRIBUTEin the test context totrue.protected voidDependencyInjectionTestExecutionListener. injectDependencies(TestContext testContext)Performs dependency injection and bean initialization for the suppliedTestContextas described inprepareTestInstance().voidAbstractTestExecutionListener. prepareTestInstance(TestContext testContext)The default implementation is empty.voidDependencyInjectionTestExecutionListener. prepareTestInstance(TestContext testContext)Performs dependency injection on thetest instanceof the suppliedtest contextbyautowiringandinitializingthe test instance via its ownapplication context(without checking dependencies).org.springframework.test.context.transaction中TestContext的使用
参数类型为TestContext的org.springframework.test.context.transaction中的方法 修饰符和类型 方法 说明 voidTransactionalTestExecutionListener. afterTestMethod(TestContext testContext)If a transaction is currently active for the supplied test context, this method will end the transaction and run@AfterTransactionmethods.voidTransactionalTestExecutionListener. beforeTestMethod(TestContext testContext)If the test method of the supplied test context is configured to run within a transaction, this method will run@BeforeTransactionmethods and start a new transaction.static TransactionAttributeTestContextTransactionUtils. createDelegatingTransactionAttribute(TestContext testContext, TransactionAttribute targetAttribute)Create a delegatingTransactionAttributefor the supplied targetTransactionAttributeandTestContext, using the names of the test class and test method to build the name of the transaction.protected PlatformTransactionManagerTransactionalTestExecutionListener. getTransactionManager(TestContext testContext)Get the transaction manager to use for the supplied test context.protected PlatformTransactionManagerTransactionalTestExecutionListener. getTransactionManager(TestContext testContext, String qualifier)protected booleanTransactionalTestExecutionListener. isDefaultRollback(TestContext testContext)Determine whether or not to rollback transactions by default for the supplied test context.protected booleanTransactionalTestExecutionListener. isRollback(TestContext testContext)Determine whether or not to rollback transactions for the supplied test context by taking into consideration the default rollback flag and a possible method-level override via the@Rollbackannotation.static DataSourceTestContextTransactionUtils. retrieveDataSource(TestContext testContext, String name)Retrieve theDataSourceto use for the supplied test context.static PlatformTransactionManagerTestContextTransactionUtils. retrieveTransactionManager(TestContext testContext, String name)Retrieve the transaction manager to use for the supplied test context.protected voidTransactionalTestExecutionListener. runAfterTransactionMethods(TestContext testContext)Run all@AfterTransactionmethods for the specified test context.protected voidTransactionalTestExecutionListener. runBeforeTransactionMethods(TestContext testContext)Run all@BeforeTransactionmethods for the specified test context.org.springframework.test.context.web中TestContext的使用
参数类型为TestContext的org.springframework.test.context.web中的方法 修饰符和类型 方法 说明 voidServletTestExecutionListener. afterTestMethod(TestContext testContext)If theServletTestExecutionListener.RESET_REQUEST_CONTEXT_HOLDER_ATTRIBUTEin the suppliedTestContexthas a value ofBoolean.TRUE, this method will (1) clean up thread-local state after each test method by resetting Spring Web'sRequestContextHolderand (2) ensure that new mocks are injected into the test instance for subsequent tests by setting theDependencyInjectionTestExecutionListener.REINJECT_DEPENDENCIES_ATTRIBUTEin the test context totrue.voidServletTestExecutionListener. beforeTestMethod(TestContext testContext)Sets up thread-local state before each test method via Spring Web'sRequestContextHolder, but only if the test class is annotated with@WebAppConfiguration.voidServletTestExecutionListener. prepareTestInstance(TestContext testContext)Sets up thread-local state during the test instance preparation callback phase via Spring Web'sRequestContextHolder, but only if the test class is annotated with@WebAppConfiguration.