Nano Hash - криптовалюты, майнинг, программирование

Повторное использование Junit Tomcat context.xml

Я не эксперт в Java, но прямо сейчас я унаследовал код, который мне нужен для работы. Моя цель — запустить исходный набор тестов. Для (создания) bean-компонентов, необходимых для тестов, требуются некоторые настройки среды. Эти настройки находятся в tomcat-root-dir/conf/context.xml. Эти параметры среды используются tomcat для развертывания веб-приложения.

Я хочу повторно использовать tomcat-root-dir/conf/context.xml с junit или иным образом заставить работать набор тестов. Есть ли какой-то стандартный способ анализа context.xml для junit? Я был бы признателен, если бы вы могли помочь мне с этим.

03.01.2011

  • Вы можете создать локальную переменную сборки/системы, которая указывает, где у вас есть tomcat, и работать оттуда. 04.01.2011

Ответы:


1

Существует стандартный способ разбора XML, так что вы можете свободно читать любой файл и анализировать XML.

Я предполагаю, что вам нужен поиск JNDI для источника данных или что-то в этом роде. Проблема, конечно, будет заключаться в том, что вы связаны с Tomcat, если будете упорствовать в этом направлении.

03.01.2011
  • Спасибо за ваш комментарий. Да, ваше предположение о поиске JNDI верно. 05.01.2011

  • 2

    JUnit4 предоставляет правило ExternalResource для обработки ресурса: см. основное правило внешнего ресурса< /а>.

    05.01.2011

    3

    Мы решили использовать встроенный сервер Glassfish. Это не будет повторно использовать tomcat context.xml, но сможет получить доступ к внешним ресурсам.

    05.01.2011

    4

    TomcatJNDI решает эту проблему. Он может обрабатывать файлы конфигурации Tomcat и создает ту же среду JNDI, что и Tomcat, но без запуска сервера. Таким образом, вы можете запускать классы с зависимостями от среды JNDI Tomcat в e. грамм. Юнит-тесты.

    TomcatJNDI tomcatJNDI = new TomcatJNDI();
    tomcatJNDI.processContextXml(new File("tomcat-root-dir/conf/context.xml");
    tomcatJNDI.start();
    

    Затем ваши классы могут искать DataSource, как если бы они работали в Tomcat.

    Подробнее о TomcatJNDI можно найти здесь.

    16.11.2017
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..