仅在某些时间运行某些测试时出现错误java.lang.NoClassDefFoundError
。java.lang.NoClassDefFoundError:无法初始化类
以下是设置: 测试是用Scala和Java语言编写的服务。也使用蚂蚁和常春藤。
Order.scala看起来是这样的:
object Order extends JdbcEnabled {
val orderServiceClientIpAddress = Network.localIpAddress
val PersonalOffersSaleId = "123"
lazy val checkoutClient = new CheckoutClientImpl(YamlConfigFactory.loadConfig(
this.getClass.getClassLoader.getResourceAsStream("core_config.yaml")
).getRequiredSubConfig("core").getRequiredSubConfig(Environment.HostEnv))
val storeList = new JLinkedList[Store]()
storeList.add(OrderHelper.getSelectedStore)
var skuList = OrderHelper.getAvailableSkus
val skusForInternationalOrders = skuList
def createOrder(){...}}
有使用TestNG运行许多测试。有时候所有的测试都没有任何问题,但有时他们会因为这个例外而失败。
下面是测试在失败时调用Order api的片段。
val orderNumber = Order.createOrder()
这是整个堆栈跟踪,当该测试失败:
java.lang.NoClassDefFoundError: Could not initialize class com.api.Order$
at com.CreateOrder.setUpOnce(CreateOrder.scala:35)
35号线在类,CreateOrder.scala是:
val orderNumber = Order.createOrder()
我认为这意味着你有一个Order中的内部类,它在初始化时失败。但这大概是一个Scalaism。 –