Тест JUnit (w JNA) молча провалился? - PullRequest
0 голосов
/ 29 мая 2019

Я использую Java 11, JNA с DLL на 64-битной Windows 10, JUnit 4.12, Eclipse 20190314-1200, или 4.11.0. Это основанный на gradle проект, но у меня закончились теги.

Многое из этого может не относиться, но контекст никогда не болит, верно?

Во время выполнения любого модульного теста, касающегося рассматриваемой DLL, тест молча завершается неудачей, почти сразу. Почти. Когда я пытаюсь идти дальше, я попадаю в Structure.autoWrite() (функция-член, а не статическая), а когда я выхожу, пуф. Тест заканчивается. Стек вызовов выглядит удивительно так, как будто я вызвал autoWrite() напрямую, хотя на самом деле это вызов метода native. Пользовательский интерфейс Eclipse JUnit продолжает показывать этот тест, как будто он все еще выполняется (маленький синий треугольник на значке), но все тесты прекращаются. JUnit даже не пытается запускать дальнейшие тесты.

Я не нашел никаких журналов. Standard out просто показывает мой последний вывод (путь, который JNA использует для поиска DLL). Я получил ничего.

Кто-нибудь знает соответствующий файл журнала (не в user.name/appdata/local/temp, я проверил достаточно тщательно)? Некоторые настройки я могу настроить для более подробного вывода? Где я могу найти код выхода JVM, может быть? Что-нибудь?

1 Ответ

0 голосов
/ 29 мая 2019

DLL, о которой идет речь, не была установлена ​​должным образом (мной), и когда я впервые вызываю функцию инициализатора, она регистрирует ошибку (в неожиданном углу моего жесткого диска) и вызывает exit(), что просто грубо.

Ваша DLL не должна завершать процесс моей программы.По крайней мере, это не привело к отключению Eclipse.Это было бы ... досадно.

И это было последним препятствием между мной и полным набором прохождения юнит-тестов.Вот так.

Вверх и вперед!

...