Тестирование реального EAR с проблемами arquillian - PullRequest
0 голосов
/ 07 октября 2019

У меня есть этот EAR-файл, который я хочу протестировать с помощью arquillian.

Во время теста я сталкиваюсь с проблемами внедрения зависимостей, вызванными исключением потока ...

java.io.StreamCorruptedException: invalid stream header: 3C3F786D
    at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:857)
    at java.io.ObjectInputStream.<init>(ObjectInputStream.java:349)
    at org.jboss.arquillian.protocol.servlet.ServletMethodExecutor.execute(ServletMethodExecutor.java:194)
    at org.jboss.arquillian.protocol.servlet.ServletMethodExecutor$1.run(ServletMethodExecutor.java:250)
    at java.util.TimerThread.mainLoop(Timer.java:555)
    at java.util.TimerThread.run(Timer.java:505)

Я использую пролет 14.0.1 для испытаний, и ухо, кажется, разворачивается хорошо.

Код выглядит следующим образом:

@RunWith(Arquillian.class)
public class ArquillianTest {

    @PersistenceContext(unitName = "PU")
    EntityManager em;

    @Deployment
    public static EnterpriseArchive createDeployment() {
        EnterpriseArchive ear = ShrinkWrap.createFromZipFile(EnterpriseArchive.class, new File(EAR_PATH));
        WebArchive war = ear.getAsType(WebArchive.class, WAR_NAME);
        war.addClass(MyTestClass.class);
        ear.addAsModule(war);

        return ear;

    }


    @Test
    public void init() throws Exception {
        Assert.assertTrue(true);
    }

}

РЕДАКТИРОВАТЬ: Кажется, что это связанона тот факт, что http://127.0.0.1:8080/MyProject/ArquillianServletRunner?outputMode=serializedObject&className=com.mytest.MyTest.class&methodName=blancTest

возвращает XML вместо двоичного файла. Кто-нибудь знает, как этого избежать?

...