Базы данныхИнтернетКомпьютерыОперационные системыПрограммированиеСетиСвязьРазное
Поиск по сайту:
Подпишись на рассылку:

Назад в раздел

Регрессивный тест
Руководство администратора по PostgreSQL
Предыдущий Следующий

Глава 14. Регрессивный тест

Оглавление
Регрессивная среда
Схема размещения каталогов
Процедура регрессивного тестирования
Регрессивный анализ

Инструкции регрессивных тестов и анализ.

Регрессивные тесты PostgreSQL - это обширный набор тестов для реализации SQL, встроенного в PostgreSQL, разработанного Jolly Chen и Andrew Yu. Он тестируют как стандартны операции SQL, как расширенные возможности PostgreSQL.

Эти тесты недавно были были исправлены Marc Fournier и Thomas Lockhart и теперь упакованы как функциональные модули, которые легче запускать и понимать. После PostgreSQL v6.1 регрессивные тесты теперь в каждом официальном релизе.

Некоторые правильно установленные и полностью функциональные установки PostgreSQL, могут не пройти некоторые регрессивные тесты из-за различного представления чисел с плавающей точкой и поддержки временных зон. Текущие тесты оцениваются с помощью простого алгоритма "diff", и чувствительны к маленьким системным различиям. Для явно не прошедших тестов, при исследовании различий может обнаружиться, что различия несущественны.

Регрессивное тестирование, отмечаемое ниже, предполагает следующее (исключая замечания):

  • Команды - Unix-совместимые. Замечание ниже.
  • Используются значения по умолчанию, кроме где отмечено другое.
  • Пользователь postgres - это суперпользователь Postgres.
  • Путь к исходным текстам - /usr/src/pgsql (возможны другие пути).
  • Путь во время выполнения - /usr/local/pgsql (возможны другие пути).

Регрессивная среда

Регрессивный тест вызывается командой make, которая компилирует программу C, в разделяемую библиотеку в текущем каталоге. Также в текущем каталоге создаются локализованные сценарии shell. Файлы шаблонов вывода в файлах ./expected/*.out. Локализация заменяет макросы в исходных файлах абсолютными именами и именами пользователей.

Обычно, регрессивный тест должен запускаться pg_superuser, т.к. каталог 'src/test/regress' и подкаталоги принадлежат pg_superuser. Если ты запустил регрессивный тест другим пользователем, то он должен иметь право на запись в дерево каталогов 'src/test/regress'.

Прежде было необходимо запускать postmaster с системной временной зоной установленной в PST, но теперь это больше ненужно. Ты можешь запускать регерессивные тесты под обычной конфигурацией postmaster. Сценарий теста устанавливает переменную среды PGTZ, чтобы быть уверенным что тесты зависящие от временной зоны приведут к ожидаемым результатам. Однако, твоя система должна быть обеспечена библиотекой поддержки для временной зоны PST8PDT, или тесты зависящие от временной зоны, не пройдут. Для проверки, что твоя система имеет такую поддержку, набери следующее:

    setenv TZ PST8PDT
    date

Команда "date" выше, должна вернуть текущую системное время во временной зоне PST8PDT. Если база данных PST8PDT недоступна, то твоя система может вернуть время в GMT. Если временная зона PST8PDT недоступна, то можно установить правила временной зоны так:

    setenv PGTZ PST8PDT7,M04.01.0,M10.05.03

Предыдущий Начало Следующий
Восстановление базы данных   Схема размещения каталогов


  • Главная
  • Новости
  • Новинки
  • Скрипты
  • Форум
  • Ссылки
  • О сайте




  • Emanual.ru – это сайт, посвящённый всем значимым событиям в IT-индустрии: новейшие разработки, уникальные методы и горячие новости! Тонны информации, полезной как для обычных пользователей, так и для самых продвинутых программистов! Интересные обсуждения на актуальные темы и огромная аудитория, которая может быть интересна широкому кругу рекламодателей. У нас вы узнаете всё о компьютерах, базах данных, операционных системах, сетях, инфраструктурах, связях и программированию на популярных языках!
     Copyright © 2001-2021
    Реклама на сайте