подключение alm и soapUI

Я пытаюсь заставить soapUI и ALM общаться. Наконец-то я правильно настроил scriptom и даже получил справочник HP OTA ALM. . Однако у меня есть несколько вопросов...

  1. Ссылка говорит

Вы должны загрузить и зарегистрировать библиотеку COM на каждой рабочей станции, которая будет обмениваться данными с платформой ALM.

Разве я не могу просто добавить OTAClient.dll в java.library.path или куда-то еще и заставить его работать. Я спрашиваю об этом, потому что, когда сценарий будет завершен, не все пользователи сценария не будут иметь прав администратора для регистрации dll. Хотя у них определенно будет dll, потому что она загружается, как только кто-то открывает ALM на своей машине.

Прошло несколько лет с тех пор, как мне нужно было создать программу для доступа к QC или ALM через программу, но раньше я просто создавал ActiveXObject (используя vbs) и переходил оттуда без необходимости регистрироваться или что-то в этом роде.

  1. По какой-то причине мой приведенный ниже код не работает, какие-либо предложения по исправлению?

Код:

import org.codehaus.groovy.scriptom.*;
def tdc = new ActiveXObject('TDApiOle80.TDConnection')

Ошибка:

org.codehaus.groovy.scriptom.ActiveXObject$CreationException: Could not create ActiveX object: 'TDApiOle80.TDConnection'; Can't co-create object error at line: 3

---Обновление-- После публикации этого вопроса я попытался зарегистрировать dll, как указано в справочном документе по API, но по-прежнему получаю ту же ошибку, что и раньше, поэтому у меня есть еще два вопроса: D

Действия по регистрации dll в соответствии со справочным документом ALM API chm

To use the Open Test Architecture API as a stand-alone tool, develop your own applications in a development environment that supports COM. You must download and register the COM library on every workstation that will communicate with the ALM Platform. You must have a reference to the library in your application development project.

The library, OTAClient.dll, is automatically downloaded to your workstation the first time you run ALM. 

Register the library for the server by running Client Side Connectivity from the ALM Add-ins page. Select Add-ins from the Help menu. On the Add-ins page, select Client Side Connectivity, and click Download Add-in. You may need to repeat the registation if you use a different version of ALM or Quality Center 9.2 or later.

Дополнительные вопросы... 1. Как я могу проверить, действительно ли были зарегистрированы dll, а также 64-битные версии, а не 32-битные версии? 2. Было бы проще использовать Rest API, предоставляемый ALM, чтобы делать то, что я хочу? Я хотел бы, чтобы код мог работать с ALM и QC9.0.


person Abhishek Asthana    schedule 17.09.2013    source источник


Ответы (2)


  1. Ошибка при загрузке COM API ALM/QC: OTAClient.dll — это только 32-разрядная библиотека DLL. Итак, вам нужно убедиться, что ваше приложение является 32-битным приложением. Для Java это будет означать, что вам нужна 32-битная JRE или JDK.
  2. ALM COM API и REST API: поскольку вам нужно, чтобы ваше решение работало с QC 9.0 и ALM 11 и более поздними версиями, тогда OTA/COM API — ваше лучшее решение. REST API в ALM 11 более переносим и позволяет создавать, читать, обновлять и удалять объекты ALM (требования, тесты, результаты тестов, дефекты), но доступен в ALM 11 и более поздних версиях.

Надеюсь это поможет!

person ojacques    schedule 16.10.2013
comment
поговорите об ответе из уст лошадей (каламбур) :) Просто чтобы уточнить часть 32-битного приложения. Я пытаюсь заставить soapui (64-разрядную версию) работать с ALM/QC в 64-разрядной ОС. Нужно ли мне загружать 32-битную версию Java и soapUI, чтобы иметь возможность делать то, что я хочу? - person Abhishek Asthana; 16.10.2013
comment
Кроме того, знаете ли вы, есть ли планы по внедрению 64-битной версии OTA API? - person Abhishek Asthana; 16.10.2013

Начиная с HP ALM 11. OTAClient.dll больше не регистрируется по умолчанию. Чтобы зарегистрировать его, вам нужно, чтобы пользователь сделал это со страницы плагинов. Доступ к нему можно получить по ссылке на /qcbin/. Если я правильно помню, это называется общим или общим развертыванием и требует прав администратора.

person Alex Shnayder    schedule 19.09.2013
comment
Извините, я должен был обновить свой вопрос. Поскольку я разместил вопрос, я зарегистрировал dll, используя метод, описанный в справочном документе API, но я все еще не мог заставить свой код работать, продолжая получать ту же ошибку. - person Abhishek Asthana; 19.09.2013