Всем привет.
У меня вопрос такой появился:
Как написать тесты для интерфейса?
Вот тесты для операторов легко писать. К, примеру, таким способом:
- Код: Выделить всё
import bpy
for ob in bpy.data.objects:
bpy.ops.my.operator(ob)
Этот скрипт можно запустить в заранее созданном blend файле, который хранит все возможные случаи входных данных (в данном случае объекты). То есть скрипт тестирует оператор bpy.ops.my.operator, подавая ему на вход абсолютно все возможные объекты блендера (если меш, то он может быть с модификаторами или без, с полигонами или без и т. д.). В итоге легко увидеть ошибку. Не нужно вручную на каждом объекте проверять. Достаточно один раз заготовить эти объекты и запустить скрипт.
Но вот как быть с интерфейсом?
Не открывать же вручную все панельки и не разворачивать все списки?
Ну может не с помощью питона, а с помощью сторонних программ? Может есть какая программа, которая запоминает движение мыши и координаты кликов? Чтобы один раз записать события мыши, а потом повторять их автоматически.
В общем, как тестировать интерфейс аддонов? У меня была такая ситуация, что в аддоне больше полгода абсолютно не работала одна панелька. И я даже об этом не догадывался. А этим аддоном пользовались как минимум с десяток человек и они не знали, что в интерфейсе что-то не так.