在Intellij Idea中运行单元测试

2020-08-31 04:52发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我在Idea内运行单元测试时遇到困难。 尝试以junit测试形式运行该类会首先触发构建,并且由于某种原因,该构建开始构建所有内容,包括生成到models.jar的bean(即使整个项目已经使用ant all构建)。 Bean生成时由于某种原因导致缺少大多数属性而导致严重错误,并且该项目无法编译。 我收到如下错误:

 错误:(43,29)java:找不到符号
    符号:方法setConfiguratorType(de.hybris.platform.catalog.enums.ConfiguratorType)
    位置:类型为de.hybris.platform.commercefacades.order.data.ConfigurationInfoData的变量项

  

当我查看这些bean时,它们似乎只包含sapproductconfigfacades中的属性,其他所有内容都丢失了。

如果我尝试在没有构建步骤的情况下运行测试,则找不到测试类。

我已经使用Hybris插件将项目导入了Idea。 我正在使用Hybris 6.4.0.2

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我在Idea内运行单元测试时遇到困难。 尝试以junit测试形式运行该类会首先触发构建,并且由于某种原因,该构建开始构建所有内容,包括生成到models.jar的bean(即使整个项目已经使用ant all构建)。 Bean生成时由于某种原因导致缺少大多数属性而导致严重错误,并且该项目无法编译。 我收到如下错误:

 错误:(43,29)java:找不到符号
    符号:方法setConfiguratorType(de.hybris.platform.catalog.enums.ConfiguratorType)
    位置:类型为de.hybris.platform.commercefacades.order.data.ConfigurationInfoData的变量项

  

当我查看这些bean时,它们似乎只包含sapproductconfigfacades中的属性,其他所有内容都丢失了。

如果我尝试在没有构建步骤的情况下运行测试,则找不到测试类。

我已经使用Hybris插件将项目导入了Idea。 我正在使用Hybris 6.4.0.2

付费偷看设置
发送
8条回答
Nan4612
1楼 · 2020-08-31 05:21.采纳回答

嗨,要实现正确的编译和单元测试,您需要执行以下操作。

  • 在导入项目之前,请确保它是由ant编译的(全部清除)。

  • 使用当前版本的插件导入项目。 项目刷新旨在在您拥有的插件版本中工作。 如果您升级到较新的插件版本,则可能缺少某些设置。

  • 当前插件版本为8.2,并且需要IDEA 2017.3

  • 导入后,您需要确定是否要继续使用ant OR native build。 您不能混搭。

  • 好的,您决定使用本机构建,因为它更快,因为本机构建将仅编译更改的类。 所有类第一次都是"肮脏的",IDEA将编译所有内容。 初始导入后,您需要使用IDEA本机生成器编译项目。 替代文本

您现在有两个用于集成测试的选项。 -在本地执行测试。 对于集成测试,这意味着启动hybris平台可能需要一些时间。 -在远程Hybris实例上执行测试。 集成测试的理想选择替代文字

骆驼绵羊
2楼-- · 2020-08-31 05:14

您是否已解决此问题? 您可以分享它的固定方式吗?

3楼-- · 2020-08-31 04:54

嗨。

尝试以junit测试形式运行该类会首先触发构建,并且由于某种原因,该构建开始构建所有内容,包括为models.jar生成bean(即使整个项目已经使用ant all构建)

Intellij IDEA中的

Ant构建和"本机"构建是两个独立的系统。 您不能期望IDEA理解该项目已在构建,因为您已经运行了" ant clean all"。 我建议您在运行测试之前使用" Build-> Rebuild Project"从Intellij重建项目。 至少编译一次之后,IDEA会记住这一点,下次它将仅编译更改的文件。

生成Bean时由于缺少大多数属性而导致某种可怕的错误,并且该项目无法编译。

如果可以的话,请提供有关项目设置,结构和导入项目的详细信息。 因为尚不清楚到底发生了什么。

对于其他有问题的人:请在我们的支持项目中的中创建支持票证 JIRA ,我们将与您一起解决您的问题。

谢谢。

歪着头看世界
4楼-- · 2020-08-31 04:54

您使用的是哪个IDEA版本? 您使用什么插件版本? 您导入了哪个插件版本的项目?

SAP浪
5楼-- · 2020-08-31 04:55

找到了一种解决方法:运行JUnit测试时,需要从Idea的插件设置中关闭Hybris Integration插件。 似乎以某种方式弄乱了构建。

ZJXianG
6楼-- · 2020-08-31 05:21

对于junit测试,请创建y测试配置。 例如,要测试单个测试,配置将如下所示:

替代文字 替代文字

运行配置已准备好进行调试

huskylover
7楼-- · 2020-08-31 04:54

有相同的问题

一周热门 更多>