Установка разнообразной тестовой среды базы данных

Вы можете использовать это

DB::enableQueryLog();
\App\Visitor::create(['key' => 'value', ....]);
$data = DB::getQueryLog();
$query = str_replace(array_fill(0, count($data[0]['bindings']), '?'), $data[0]['bindings'],  $data[0]['query']);
dd($query);
6
задан Bittercoder 16 April 2009 в 23:29
поделиться

6 ответов

  • Мы также используем vmware для наших серверов, по одному хосту vmware на базу данных. У вас должно быть все в порядке с размещением нескольких баз данных на одной виртуальной машине.
  • У вас не должно быть особых проблем с дорогими лицензиями на программное обеспечение. Oracle, например, позволяет вам иметь лицензию на разработку для всех своих продуктов. Пока вы не используете производственную БД на вашем ноутбуке vmware, все будет в порядке. Конечно, IANAL.
  • Для Oracle получите Enterprise Edition, если именно это будут использовать ваши клиенты (скорее всего).
  • Будьте уверены и воспользуйтесь снимками vmware. Вы можете сконфигурировать базы данных для запуска ваших тестов, запустить тесты, а затем вернуть базы данных в состояние, предшествующее тестированию, чтобы снова запустить ваши тесты.
6
ответ дан 10 December 2019 в 00:44
поделиться

Oracle имеет бесплатное «Экспресс-издание». Он не обладает всеми функциональными возможностями Oracle, но если вы также используете Jet, тогда это не должно быть проблемой.

1
ответ дан 10 December 2019 в 00:44
поделиться

Что мы делаем Вот (в основном) виртуальная машина для каждой требуемой конфигурации, мы также нацелены на разные операционные системы, поэтому имеем примерно 22 конфигурации, которые мы тестируем. Эти виртуальные машины размещены на сервере ESX, и их сценарии запускаются и останавливаются при необходимости, так что они не все работают одновременно. Было много работ по настройке.

С точки зрения стоимости серверов баз данных,

1
ответ дан 10 December 2019 в 00:44
поделиться

С точки зрения архитектуры, может быть лучше создать ферму тестирования интеграции серверов, которые достаточно мощны для запуска различных по конфигурации виртуальных машин. Он может быть запущен процессом очереди, прослушивающим запросы на интеграционное тестирование (которое может быть запущено с помощью SVN-коммитов или других проверок контроля источника в триггерах).

Для наиболее точного диапазона тестирования вы, вероятно, захотите иметь отдельную виртуальную машину для каждая конфигурация. Это снизит риск конфликтующих конфигураций, а также увеличит гибкость запуска настраиваемого набора виртуальных машин (например, Oracle + MySQL + PostgreSQL, а не других и т. Д.). В зависимости от вашего процесса сборки, это также может позволить вам запускать 10-минутные сборки.

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

1
ответ дан 10 December 2019 в 00:44
поделиться

It sounds like you have a good idea of what to do already. I'd suggest the following VM layouts:

A Windows Server 2008 box hosting the following:

  • MSDE
  • Jet 4.0 (MS Access)
  • Sybase Adaptive Server Anywhere
  • Sybase Sql Anywhere
  • Progress OpenEdge

On an Ubuntu or Red Hat box:

I don't see any need to test against the full blown SQL and Oracle editions. The free editions are stripped down, so there is very little risk of that code breaking when you run it against the full version of those servers. If you had tested against the full server and went down to the free stuff, then yes some things might break, but by testing with the least common denominator, you should ensure good quality.

0
ответ дан 10 December 2019 в 00:44
поделиться

Oracle license excerpt:

We grant you a nonexclusive, nontransferable limited license to use the programs only for the purpose of developing, testing, prototyping and demonstrating your application, and not for any other purpose.

So, you can download full Oracle versions 9, 10 and 11 and use them free of charge as stated in license. Проверьте раздел загрузок на www.oracle.com

1
ответ дан 10 December 2019 в 00:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: