Отсутствует операция [имя_операции] в определении wsdl [закрыто]JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Отсутствует операция [имя_операции] в определении wsdl [закрыто]

Сообщение Anonymous »

У меня есть проект SoapUI (с именем projectX) с тестовым примером. Когда тестовый пример запускается из графического пользовательского интерфейса, он работает.
При запуске с помощью SoapUI-5.6.0\bin\testrunner.bat он работает.
При запуске из программы Java, которая использует метод класса
com.eviware.soapui.tools.SoapUITestCaseRunner run()
тогда он работает сам по себе, но если запустить его как серию из 4 проектов SoapUI, произойдет сбой с сообщением «Отсутствует операция [operationXyz] в определении wsdl».
В настоящее время я использую мыльную банку версии 5.1.0. Использование 5.1.3 не помогает. Я буду пробовать никогда версии в будущем. (это не просто, поскольку это старый устаревший проект, использующий старую версию Java, в которой не запускаются новые jar-файлы Soapui)
Есть идеи, почему это происходит?
Код Java в основном:

Код: Выделить всё

SoapUI.getSettings().setBoolean(SSLSettings.CLIENT_AUTHENTICATION, true);
SoapUI.getSettings().setString(SSLSettings.KEYSTORE, "src/test/resources/xxxxxx.p12");
SoapUI.getSettings().setString(SSLSettings.KEYSTORE_PASSWORD, "12345678");
SoapUI.saveSettings();

SoapUITestCaseRunner runner = new SoapUITestCaseRunner();
runner.setProjectFile("src/test/resources/project_1.xml");
runner.setProjectProperties(new String[] { "foo="+foo, "bar="+bar});
runner.setOutputFolder("target/soapui/project_1");
runner.setJUnitReport(true);
runner.setExportAll(true);
runner.setPrintReport(true);
runner.run();

// then repeat the exact same for project_2, i.e. just a different argument to setProjectFile()
Поиск этой ошибки в Интернете обнаруживает всего пару совпадений без какого-либо разрешения.
Запуск этих наборов тестов с помощью Soapui-maven-plugin версии 5.1.3 работает так же:
  • если projectX запускается один, он работает.
  • если projectX запускается после запуска проекта 1, он работает
  • если проектX запускается после проекта 2, он терпит неудачу (тестовый пример проекта 2 в порядке, проектX завершается сбоем)
  • если сначала запускается проект X, а затем проект 2, оба работают
Похоже, что проект 2 (но не проект 1) оставляет после себя что-то, что приводит к сбою проекта X. Что бы это ни было, оно живет только на время испытания. Если тест перезапускается только с projectX, то он работает.
Позже я обнаружил, что причина в том, что SoapUI каким-то образом кэширует WSDL для своего URL-адреса (WSDL), и эти проекты имели один и тот же URL-адрес WSDL (но разное фактическое содержимое WSDL).
Проблема возникает также в графическом интерфейсе SoapUI 5.6.0 и 5.8.0: если проект открываются или выполняются тесты из него, их WSDL «загружается» и позже используется даже для других проектов, в которых хранится другой WSDL.

Подробнее здесь: https://stackoverflow.com/questions/788 ... definition
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»