2016-12-18 3 views
0

У меня есть то, что я предполагаю, является довольно распространенным сценарием: я хочу протестировать веб-сервис через FitNesse, а также в состоянии вводить и считывать данные из базы данных за веб-службой. Например, я хотел бы сделать следующее:В FitNesse можно обмениваться переменными или данными между тестовыми страницами Java и FitSharp?

1) Сохранить запись непосредственно в базе данных; затем

2) Используйте веб-службу для обновления созданной записи; затем

3) Проверьте запись базы данных, чтобы увидеть, что она была обновлена ​​правильно.

Потенциальная муха в мазене состоит в том, что база данных - это SQL Server, и я развиваюсь против моего (localdb) экземпляра SQL Server на моей локальной машине. Поэтому мне нужно FitNesse, чтобы иметь возможность подключаться к (localdb).

Насколько я могу видеть RestFixture, для тестирования веб-службы работает только в Java-версии FitNesse. Тем не менее, версия Java DbFit для подключения к базам данных может использовать только драйвер JDBC от Microsoft для подключения к SQL Server. Согласно this Stackoverflow question драйвер MS JDBC не поддерживает именованные каналы, поэтому не удается подключиться к (localdb). Поэтому мне пришлось бы использовать версию DbFit FitSharp (.NET), которая отлично работает с (localdb).

Теперь проблема заключается в объединении Java RestFixture с FitSharp DbFit. Например, если я создаю новую запись в базе данных через DbFit, я хочу прочитать значение идентификатора только что созданной записи и использовать это значение для идентификации записи для обновления через веб-службу. Поэтому мне нужно передать переменную или некоторую информацию с тестовой страницы FitSharp DbFit на тестовую страницу Java RestFixture. Это возможно?

+0

Я вижу (в http://stackoverflow.com/questions/11345746/connecting-to-sql-server-localdb-using-jdbc), что jTDS поддерживает соединение JDBC с localdb. Это вариант для вас? –

+0

@FriedHoeben: К сожалению, нет. Java-версия DbFit поддерживает только драйвер Microsoft JDBC для SQL Server. –

ответ

1

Насколько я знаю, это не так. REST API не поддерживает создание и чтение? Это позволит весь тест через REST (прямой доступ к базе данных не требуется, и нет необходимости запускать на том же сервере, что и база данных).

+0

К сожалению, веб-API не поддерживает создание и чтение для всех таблиц в базе данных, только новые разработали в течение последних нескольких месяцев. Создание заказов и заказов, необходимых для тестирования, должно выполняться через настольное приложение, если они не могут быть введены непосредственно в базу данных. Возможно, можно автоматизировать процесс создания заказов через настольное приложение с помощью чего-то вроде Auto-It, но это кажется очень сложным по сравнению с простое вложение данных непосредственно в базу данных. –

Смежные вопросы