摘要:在類里,本地類里用關鍵字聲明過的方法,在單元測試啟動后會自動被調用到。在及的設定思路里,放在路徑下面以結尾的類會被當成單元測試類處理。
ABAP
在ABAP類里,本地類(Local Class)里用關鍵字FOR TESTING聲明過的方法,
在單元測試啟動后會自動被調用到。
Spring Boot在Spring及Spring Boot “Convention over configuration”的設定思路里,放在路徑src/test/java下面以Tests.java結尾的Java類會被當成單元測試類處理。
對上述項目執行命令行mvn clean install后,報錯誤消息:
java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test at org.springframework.util.Assert.state(Assert.java:70) at org.springframework.boot.test.context.SpringBootTestContextBootstrapper.getOrFindConfigurationClasses(SpringBootTestContextBootstrapper.java:202) at org.springframework.boot.test.context.SpringBootTestContextBootstrapper.processMergedContextConfiguration(SpringBootTestContextBootstrapper.java:137) at org.springframework.test.context.support.AbstractTestContextBootstrapper.buildMergedContextConfiguration(AbstractTestContextBootstrapper.java:409) at org.springframework.test.context.support.AbstractTestContextBootstrapper.buildDefaultMergedContextConfiguration(AbstractTestContextBootstrapper.java:323) at org.springframework.test.context.support.AbstractTestContextBootstrapper.buildMergedContextConfiguration(AbstractTestContextBootstrapper.java:277) at org.springframework.test.context.support.AbstractTestContextBootstrapper.buildTestContext(AbstractTestContextBootstrapper.java:112) at org.springframework.boot.test.context.SpringBootTestContextBootstrapper.buildTestContext(SpringBootTestContextBootstrapper.java:82) at org.springframework.test.context.TestContextManager.(TestContextManager.java:120) at org.springframework.test.context.TestContextManager. (TestContextManager.java:105) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTestContextManager(SpringJUnit4ClassRunner.java:152) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner. (SpringJUnit4ClassRunner.java:143) at org.springframework.test.context.junit4.SpringRunner. (SpringRunner.java:49) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:422) at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104) at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86) at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59) at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26) at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59) at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:33) at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283) at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128) at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
從調用棧能看出,Spring Boot單元測試框架試圖自動找到一個被施加單元測試的Java類,但是失敗了,所以報了異常。
由于我這個SpringBoot項目的入口是com.sap.smartService.SmartServiceApplication, 因此我需要在單元測試啟動類里指定這個入口類:
@SpringBootTest(classes = com.sap.smartService.SmartServiceApplication.class)
加上之后maven build成功:
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/72002.html
摘要:單元測試的執行入口,是硬編碼在單元測試框架實現里的。待執行的單元測試方法通過返回到一個內表里,然后該內表,依次執行。最常用的是,可以方便地單獨觸發單元測試,或者把單元測試的執行集成為的一個子步驟。 ABAP ABAP class單元測試的執行入口,CLASS_SETUP, 是硬編碼在單元測試框架實現CL_AUNIT_TEST_CLASS里的。showImg(https://segmen...
摘要:比如的的個性化設置是這樣的,字體必須用程序猿專用的等寬開源字體,這樣顯得比較專業。我覺得網上流傳的程序猿和工具的鄙視鏈很無聊,與其有時間去鄙視別人,不如把這時間用來深入研究自己每天用的,進一步提高自己單位時間內的工作效率。 Jerry和SAP成都研究院一些新同事聊天時,談到ABAP和SAP GUI這個話題。很多新同事在加入SAP成都之前,是做Java和C++開發的,習慣了Eclipse...
摘要:代碼如下可以看到中一共有個依賴,其中只有是我手動加入的,用于單元測試。點擊項目啟動按鈕,效果如下好的程序必須配備完善的單元測試。測試結果如下可以看到紅圈框住的地方,出現這個綠色標志證明單元測試沒問題。 微信公眾號:一個優秀的廢人如有問題或建議,請后臺留言,我會盡力解決你的問題。 前言 哎呦喂,按照以往的慣例今天周六我的安排應該是待在家學學貓叫啥的。但是今年這種日子就可能一去不復返了,沒...
摘要:目前被廣泛用于和的眾多應用中,以及和一些正在開發的新一代云產品中。年月時,我和德國一位負責的同事就這個話題在半小時的電話會議里產生了爭執。德國同事看了之后,同意了我的意見。和微信集成系列教程這個系列教程里,和微信的交互,使用了,使用了。 OData(Open Data Protocol)協議是一個開放的工業標準,用于定義RESTFul API的設計和使用。我的文章標題前加上SAP的前綴...
閱讀 2645·2021-09-13 10:26
閱讀 1907·2021-09-03 10:28
閱讀 1977·2019-08-30 15:44
閱讀 794·2019-08-29 14:07
閱讀 386·2019-08-29 13:12
閱讀 2144·2019-08-26 11:44
閱讀 2337·2019-08-26 11:36
閱讀 2003·2019-08-26 10:19