Давно была идея сделать тестирование скриптов для Индизайна и Иллюстратора. Пользуясь тестами на бэкенде и фронтенде, хочется тоже нажать волшебную кнопочку и наблюдать за прогресс-баром, успехами и падениями тестов. Мечта!
Но в Иллюстраторе и Индизайне у тебя на выходе файл, в котором «что-то произошло». Если пытаться после запуска скрипта писать ещё один скрипт, который будет открывать файл и проверять, сколько там у тебя создалось этих кружочков, то это с ума можно сойти!
Да, ты можешь проверить создание файлов, которые должен экспортировать твой скрипт. Ты можешь получить в результате скрипта успех/не успех. Но как быть с параметрами запуска скрипта, особенно когда у тебя большой список этих параметров да ещё и в какой-нибудь джейсон-структуре?
Ответ оказался достаточно прост, хотя пришлось повозиться с первой версией этого добра.
Когда программируешь под Адоб, всегда пишешь лог-файлы, потому что нет у Адоба консоли, где видны значения переменных и объектов. И вот ты на рабочем столе, например, делаешь лог-файл, куда пишешь всё, что хочешь.
Так вот у нас и готова база для тестирования! Просто надо логи писать рядом Адоб-файлом. И состоит система из: 1. файл, в котором запускается скрипт, 2. файлы, которые получились, 3. лог-файл.
Магическая папочка tests содержит: 1. конфиг-файл, где прописывается путь до запускаемого скрипта, 2. если надо, то файл входящих переменных, которые скрипт создаст перед каждой попыткой, 3. адрес папки, где лежит файл клиента, 4. список проверок, то есть тех самых тестов.
На текущий момент у меня уже проверки: — есть ошибка или нет, точный текст ошибки, текст ошибки может содержать текст, — сколько и каких файлов создалось и в каких папках, — какие объекты были созданы и на каких позициях.
И этого уже вполне достаточно, чтобы быть спокойным за внесение изменений в скрипт.
То есть скрипт-тестировщик должен просто: 1. зайти в папку с очередным исходных файлом, загрузить переменные при необходимости, 2. открыть файл и выполнить скрипт, закрыть файл, 3. пройтись по лог-файлу и найти там все нужные статусы, значения, тексты ошибок, уведомления успехов, 4. пройтись по файлам, если они создавались скриптом (предварительно очистив эту папку в начале запуска теста), и убедиться, что всё создано, как надо.
Тут, конечно, надо точно соблюдать одинаковые способы написание логов, чтобы эта система работала на разных скриптах. Но без аккуратности, по-моему, вообще не возможен программист для скриптов под Адоб. Там выживают самые аккуратные и внимательные. 😍
Ну волшебство же! Запустить тесты на 5 файлах клиента за последние полгода и получить в результате:
Давно была идея сделать тестирование скриптов для Индизайна и Иллюстратора. Пользуясь тестами на бэкенде и фронтенде, хочется тоже нажать волшебную кнопочку и наблюдать за прогресс-баром, успехами и падениями тестов. Мечта!
Но в Иллюстраторе и Индизайне у тебя на выходе файл, в котором «что-то произошло». Если пытаться после запуска скрипта писать ещё один скрипт, который будет открывать файл и проверять, сколько там у тебя создалось этих кружочков, то это с ума можно сойти!
Да, ты можешь проверить создание файлов, которые должен экспортировать твой скрипт. Ты можешь получить в результате скрипта успех/не успех. Но как быть с параметрами запуска скрипта, особенно когда у тебя большой список этих параметров да ещё и в какой-нибудь джейсон-структуре?
Ответ оказался достаточно прост, хотя пришлось повозиться с первой версией этого добра.
Когда программируешь под Адоб, всегда пишешь лог-файлы, потому что нет у Адоба консоли, где видны значения переменных и объектов. И вот ты на рабочем столе, например, делаешь лог-файл, куда пишешь всё, что хочешь.
Так вот у нас и готова база для тестирования! Просто надо логи писать рядом Адоб-файлом. И состоит система из: 1. файл, в котором запускается скрипт, 2. файлы, которые получились, 3. лог-файл.
Магическая папочка tests содержит: 1. конфиг-файл, где прописывается путь до запускаемого скрипта, 2. если надо, то файл входящих переменных, которые скрипт создаст перед каждой попыткой, 3. адрес папки, где лежит файл клиента, 4. список проверок, то есть тех самых тестов.
На текущий момент у меня уже проверки: — есть ошибка или нет, точный текст ошибки, текст ошибки может содержать текст, — сколько и каких файлов создалось и в каких папках, — какие объекты были созданы и на каких позициях.
И этого уже вполне достаточно, чтобы быть спокойным за внесение изменений в скрипт.
То есть скрипт-тестировщик должен просто: 1. зайти в папку с очередным исходных файлом, загрузить переменные при необходимости, 2. открыть файл и выполнить скрипт, закрыть файл, 3. пройтись по лог-файлу и найти там все нужные статусы, значения, тексты ошибок, уведомления успехов, 4. пройтись по файлам, если они создавались скриптом (предварительно очистив эту папку в начале запуска теста), и убедиться, что всё создано, как надо.
Тут, конечно, надо точно соблюдать одинаковые способы написание логов, чтобы эта система работала на разных скриптах. Но без аккуратности, по-моему, вообще не возможен программист для скриптов под Адоб. Там выживают самые аккуратные и внимательные. 😍
Ну волшебство же! Запустить тесты на 5 файлах клиента за последние полгода и получить в результате:
Tests status = OK tests: 5, asserts: 23
BY Сергей Турулин
Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260
The original Telegram channel has expanded into a web of accounts for different locations, including specific pages made for individual Russian cities. There's also an English-language website, which states it is owned by the people who run the Telegram channels. But because group chats and the channel features are not end-to-end encrypted, Galperin said user privacy is potentially under threat. Founder Pavel Durov says tech is meant to set you free If you initiate a Secret Chat, however, then these communications are end-to-end encrypted and are tied to the device you are using. That means it’s less convenient to access them across multiple platforms, but you are at far less risk of snooping. Back in the day, Secret Chats received some praise from the EFF, but the fact that its standard system isn’t as secure earned it some criticism. If you’re looking for something that is considered more reliable by privacy advocates, then Signal is the EFF’s preferred platform, although that too is not without some caveats. At this point, however, Durov had already been working on Telegram with his brother, and further planned a mobile-first social network with an explicit focus on anti-censorship. Later in April, he told TechCrunch that he had left Russia and had “no plans to go back,” saying that the nation was currently “incompatible with internet business at the moment.” He added later that he was looking for a country that matched his libertarian ideals to base his next startup.
from br