最近碰到个头疼的问题。。。。maven 在打包的时候运行 test 类的时候,不执行 beforeTest 方法,本地工程运行是没问题的。
已经排除的问题:
1.给需要排查的类加了默认构造器和 main 方法,压根没去初始化。
2.已经排除工程所有的 junit jar 包
3.如果把 beforeClass 改为 static 能运行,怀疑是不是 beforeClass 初始化顺序的问题,本地工程打印类加载时间确认没有问题 (多重继承,大概存在 4 层 beforeClass)
4.maven -X 模式打印日志,并未发现问题,spring 的配置文件已经全部加载 (beforeClass 里面去做 bean 的初始化,这一步没做)
5.排除代码问题
求问: 有谁碰到过类似问题,改为 static 暂时能用,但是奇怪的是,不是所有的 beforeClass 多失效,怀疑过是不是 tentng.xml 的问题,如下:
<test name="seller" preserve-order="true">
<groups>
<run>
<include name="SaveSellerAudit"/>
<include name="QuerySellerJoinCode"/>
<include name="QuerySellerAuditHistory"/>
<!--<include name="SellerEnterService"/>-->
</run>
</groups>
<packages>
<!--<package name="com.XXX.qatest.test.seller.sellerEnterService.*"/>-->
<package name="com.XXX.qatest.test.seller.*"/>
</packages>
</test>