我对 SpringRunner 类感到困惑。\n来自 Stackoverflow 和 google 确实理解了这一点SpringRunner并且SpringJunit4ClassRunner它们是一回事。
@RunWith(SpringRunner.class)\nRun Code Online (Sandbox Code Playgroud)\n\n我对这门课的理解是:
\n\n@RunWith有了 Junit5 和 spring boot,这个类不再需要了吗?
\n\n如果是的话,我们应该在 Spring Boot 和 Junit5 环境中使用什么?
\n用注释@WebService定义了一个Java接口 编译好的代码
例:
@WebService
public interface HelloWorldIfc{
Run Code Online (Sandbox Code Playgroud)
现在我尝试将端点接口定义为
@WebService (endpointInterface = "com.ws.HelloWorldIfc")
public interface HelloWorldIfc{
Run Code Online (Sandbox Code Playgroud)
这也很好
那么 - 我应该在接口上还是在实现类时定义端点接口?
这是任何用途的属性 - 它的目的是什么?
如果我不定义会发生什么 - 我会失去什么?
谢谢,
饱餐一顿
当我尝试运行声纳分析时,我得到了这个例外
com.mysql.jdbc.PacketTooBigException:查询包太大(1807198> 1048576).您可以通过设置max_allowed_packet'变量在服务器上更改此值.
在声纳服务器上我应该设置这个值吗?
我正在使用Sonar 3.4.1和MySQL 5.x.
Windows 7中的服务快捷方式是什么?
我可以通过两种方式获得服务:
一个.启动任务管理器>单击服务选项卡
b.Windows资源管理器 - 右键单击"计算机" - "管理" - "服务和应用程序" - "服务"
使用选项b我可以启动和停止服务,但使用选项a - 我不能
那两者有什么区别?选项b是否有快捷方式?
我正在使用maven,并希望使用JDK 1.8编译我的代码.
所以我安装了JDK 1.8
然后(这是在windows上)设置'path'变量和'JAVA_HOME'
PATH = C:\建筑\工具\ ibm_sdk80\BIN; C:\建筑\工具\ Apache的行家-3.2.5\BIN;
java主页:
C:\ Users\satish.marathe>设置JAVA_HOME
JAVA_HOME = C:\ construction\tools\ibm_sdk80
java版给我:
C:\ Users\satish.marathe> java -version
java version"1.8.0"
Java(TM)SE运行时环境(构建pwa6480sr1fp10-20150711_01(SR1 FP10))
IBM J9 VM(版本2.8,JRE 1.8.0 Windows 7 amd64 -64压缩参考20150630_255633(JIT使能,AOT使能)
J9VM - R28_jvm.28_20150630_1742_B255633
JIT - tr.r14.java_20150625_95081.01
GC - R28_jvm.28_20150630_1742_B255633_CMPRSS
J9CL - 20150630_255633)
JCL - 20150711_01基于Oracle jdk8u51-b15
javac版本告诉我:
C:\ Users\satish.marathe> javac -version
javac 1.8.0-internal
所以一切似乎都指向java 1.8
现在我使用以下方法编译我的项目:
mvn clean install
Run Code Online (Sandbox Code Playgroud)
但是,当我检查已编译的类时,我发现主要版本是51 - 这意味着它是Java 1.7
对于那些想知道如何在类文件中找到java版本的人!:)
javap -verbose <<your_package>>.<<your_class>> | findStr "major"
Run Code Online (Sandbox Code Playgroud)
编辑1:
我忘了包含maven -version的输出所以这里是:
C:> mvn …
我正在使用 spring boot 开发一个rest api。它由标准层组成:控制器(@RestController)(处理传入的http请求并公开api端点),然后是服务层(@Service),最后是存储库层(@Repository)
我的问题是关于单元测试的。
为了测试我的控制器 - 我使用mockito模拟对服务层的调用。另外,为了防止不必要地加载整个上下文,我阅读了一些有关“弹簧片”的内容,因此为了测试我的控制器 - 这是使用的注释:
@WebMvcTest
@ExtendWith(SpringExtension.class)
@WebMvcTest(controllers = TieredClaimController.class)
class TieredClaimControllerTest {
@MockBean
private TieredClaimService tieredClaimService;
@Autowired
private MockMvc mockMvc;
Run Code Online (Sandbox Code Playgroud)
类似地,为了测试我的 Spring 数据存储库,使用了另一个 Spring 切片注释:@DataJpaTest
@ExtendWith(SpringExtension.class)
@DataJpaTest
@ContextConfiguration(initializers = {SalesRepositoryTest.Initializer.class})
public class SalesRepositoryTest {
@Autowired
private SalesRepository repository;
Run Code Online (Sandbox Code Playgroud)
因此,我可以看到针对 Web 端(@WebMvcTest)和数据库端(@DataJpaTest)的专用 spring 切片注释
但是,当我需要测试我的 @Service 注解的类时,我应该使用哪个 spring 切片?我没有看到任何专门用于服务层的内容
我问的原因是我以这种方式使用它:注意(对存储库的调用是模拟的,所以本质上我的服务层单元测试是隔离的)
@ExtendWith(SpringExtension.class)
@SpringBootTest
class TieredClaimServiceTest {
@Autowired
private TieredClaimService tieredClaimService;
@MockBean
private SalesRepository salesRepository;
Run Code Online (Sandbox Code Playgroud)
然而问题是 - 当我运行这些单元测试时,会调用一些不必要的 jpa/hibernate 代码。
我该如何防止这种情况?
2019-11-29 | 21:04:17.293 | SpringContextShutdownHook …
我正在寻找使用 React、Jest 和 Enzyme 的解决方案。我是这些技术的新手。
我可以运行一些简单的测试。现在这是我想测试的:
<div className="trow">
<div className="tcolid" >101</div>
<div className="tcolname">Joe</div>
<div className="tcolgender">M</div>
</div>
<div className="trow">
<div className="tcolid" >102</div>
<div className="tcolname">Abc</div>
<div className="tcolgender">F</div>
</div>
<div className="trow">
<div className="tcolid" >103</div>
<div className="tcolname">Xyz</div>
<div className="tcolgender">F</div>
</div>
...
...
Run Code Online (Sandbox Code Playgroud)
我的 React 组件使用来自 REST API 的数据。API 可以返回多条男性和/或女性记录。我的要求是确保在 UI 中只呈现一名男性员工。我已经实现了——这不是问题。
当我使用 Jest 和 Enzyme 编写测试时,我想检查渲染时是否只渲染一个值为“M”的 html 元素。
这是我尝试过的 - Jest / Enzyme 不喜欢它。
expect (wrapper.find("div.tcolgender").text()).toEqual("M").toHaveLength(1);
Run Code Online (Sandbox Code Playgroud)
这是行不通的。我查看了 Enzyme API - 没有找到任何“计数”或类似的方法。注意 - 这是“完整”渲染,而不是“浅”渲染。
总的来说,我对消息传递很陌生,但已经加入了一个大量使用消息传递的支持项目。
因此,该项目使用 Tibco,并且在 Tibco 中,通过使用图形 UI,将主题连接到队列非常容易。
现在我们想要转向活跃的 mq - 并且刚刚开始阅读它 - 我没有找到一种简单的方法来将主题桥接到队列
有任何想法吗 ?
谢谢
java ×3
spring ×2
spring-boot ×2
enzyme ×1
javascript ×1
jax-ws ×1
jestjs ×1
jms ×1
maven ×1
mocking ×1
mysql ×1
reactjs ×1
sonarqube ×1
unit-testing ×1
web-services ×1
windows-7 ×1