2016-03-01 2 views
2

Я разрабатываю custom-xblock, где создатель курса может добавить некоторый html в предопределенный и предварительно сконструированный блок. Я установил xblock-sdk и использовал его для разработки xblock. Я могу проверить student_view в xblock-sdk, но я хочу проверить studio_view в той же среде.Как протестировать 'studio_view' в xblock-sdk?

Прямо сейчас, чтобы проверить студию studio_view, я должен установить свой разработанный пользовательский xblock в edx-платформу. Если есть какой-либо способ протестировать его в xblock-sdk, то разработка может быть более быстрой и надежной.

У меня есть dogwood релиз установлен в edx-devstack.

ответ

3

Зависит от того, что вы подразумеваете под «тестом». Если это касается ручного тестирования - это возможно, но проще просто установить его локально и проверить, работает ли он в реальной Studio. Чтобы получить доступ к другому виду, чем student_view, просто откройте сценарий с XBlock, чем добавить /${view_name} к URL - он должен открыть эту точку зрения (т.е. локальные: 8080/сценария/тест/student_view`)

Если вы говорите о UnitTests - читать вдоль.

Существует хранилище xblock-utils, которое предоставляет некоторые довольно полезные базовые классы. Один из этих классов, SeleniumBaseTest, может дать вам некоторое представление о том, как это сделать (these lines in particular).

Или вы можете просто подклассифицировать свой тестовый класс и использовать его (пример: в Poll XBlock tests). Есть одна возможная вводящая в заблуждение/запутанная вещь о представлениях Studio - их две: * studio_view - это представление, отображаемое при нажатии «редактировать» на XBlock во всплывающем окне * author_view - то, что показано в блоке. Обычно по умолчанию используется значение student_view, чтобы показать тот же контент для студентов и авторов.

Обратите внимание, что полная функциональность студий не будет доступна - некоторые ее части являются внешними по отношению к блокам studio_view и author_view, поэтому их не будет в sdk.

0

нет способа проверить Studio_view на XBlock-sdk. Единственный способ проверить это на devstack или fullstack. То, что я сделал, это обновить пользовательский XBlock всякий раз, когда я что-то меняю с помощью этой команды: sudo -u edxapp /edx/bin/pip.edxapp install --upgrade --no-deps yourXBlockFolder/

+2

Обратите внимание, что вы можете установить xblock в режиме разработчика, вместо того, чтобы периодически устанавливать его, с помощью: sudo -u edxapp /edx/bin/pip.edxapp install -e yourXBlockFolder / –