Джанго - тестирование различных визуальных блоков - PullRequest
2 голосов
/ 05 января 2010

У меня есть несколько элементов страницы, разделенных на отдельные визуальные блоки.

В настоящее время я интегрирую внешние интерфейсы htmls от дизайнера, поэтому для меня важно проверить, как они отображаются в браузере по отдельности (каждый блок).

Как проще всего это реализовать с помощью django-тестирования?

Я знаю, что могу создать вид со всеми блоками и вызвать эту страницу с помощью твила или селена. Я думаю, что должна быть более простая команда для конкретной платформы, которую я могу использовать из тестов, например gnome-open render_to_string(abcd.html,{})

Напоминает мне о школе мысли Джоэла, которая нанимает «тестера», который дисциплинирован и не возражает против этого скучного материала, когда проверяю его снова и снова; но я не обязательно это принимаю.

Кроме того, как проще всего указать django использовать in-memory-sqlite-db для тестирования, чтобы ускорить процесс?

Ответы [ 2 ]

0 голосов
/ 27 марта 2010

В вопросе использования sqlite для тестов вы можете указать отдельный модуль настроек (назовем его test_settings), который определяет только настройки базы данных. Затем запустите его как:

manage.py test --settings=test_settings

В этот файл положить:

from settings import *
DATABASE_ENGINE = "sqlite3"

Бегун теста должен использовать базу данных в памяти по умолчанию, если указан sqlite.

Относительно проверки вывода отдельных элементов, это зависит от того, чего вы пытаетесь достичь. Если вы имеете в виду, что вы хотите вручную посмотреть на что-то в браузере, чтобы убедиться, что это нормально, тогда я бы предложил написать команду управления для этого. Бегущий по тестам лучше подходит для вещей, которые могут быть определены для прохождения или неудачи в коде. Как упоминалось ранее, если это ваша цель, то вывод в файл, а затем написание сценария в браузере для открытия вкладок со всеми файлами в каталоге, если, вероятно, хорошая идея. Вам может пригодиться Watir, это библиотека с открытым исходным кодом (BSD) для автоматизации веб-браузеров.

Если то, что у вас есть, можно проверить программно (некоторые вещи CSS, сравнить с изображением, найти строку в выводе), тогда вам может пригодиться некоторая работа, которую я проделал в области тестирования CSS с использованием селена и Python (http://github.com/garethr/css-test)

0 голосов
/ 05 января 2010

Возможно записать render_to_string () в файл, а затем запустить браузер с этим файлом в качестве параметра (используя subprocess.call или что-то подобное)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...