Как проверить 'studio_view' в xblock-sdk?
Я разрабатываю custom-xblock
где создатель курса может добавить немного html в предопределенный и заранее спроектированный блок. Я установил xblock-sdk
и использовать то же самое для разработки xblock. Я могу проверить student_view
в xblock-sdk но я хочу проверить studio_view
в той же среде.
Прямо сейчас, чтобы протестировать studio_view, я должен установить свой разработанный custom-xblock на платформу edx. Если есть какой-либо способ проверить это в xblock-sdk, тогда разработка может быть более быстрой и надежной.
я имею dogwood
выпуск установлен в edx-devstack
,
2 ответа
Зависит от того, что вы подразумеваете под "тестом". Если речь идет о ручном тестировании - это возможно, но проще просто установить его локально и проверить, работает ли он в реальной Studio. Чтобы получить доступ к представлениям кроме student_view
Открой сценарий с XBlock, чем добавь /${view_name}
на URL - он должен открыть это представление (то есть localhost:8080/script /test/student_view`)
Если вы говорите о юнит-тестах - читайте дальше.
Есть репозиторий xblock-utils, который предоставляет несколько довольно полезных базовых классов. Один из тех классов, SeleniumBaseTest
может дать вам некоторое представление о том, как это сделать ( в частности, эти строки).
Или вы можете просто создать подкласс своего тестового класса и использовать его (пример: в тестах Poll XBlock). В представлении Studio есть одна вещь, которая может вводить в заблуждение или сбивать с толку - их две: * studio_view
- отображается ли вид, когда вы нажимаете "изменить" на XBlock во всплывающем окне * author_view
- что показано в блоке. Обычно по умолчанию student_view
показать одинаковый контент студентам и авторам.
Обратите внимание, что полная студийная функциональность там не будет доступна - некоторые ее части являются внешними по отношению к блокам. studio_view
а также author_view
, поэтому они не будут там в SDK.
Нет возможности проверить Studio_view
на XBlock-sdk
, Единственный способ проверить это на devstack или fullstack. Что я сделал, так это обновлял пользовательский XBlock всякий раз, когда я что-либо изменял в нем, используя эту команду: sudo -u edxapp /edx/bin/pip.edxapp install --upgrade --no-deps yourXBlockFolder/