vanessa-opensource / add Goto Github PK
View Code? Open in Web Editor NEWРазработка с управляемым качеством на 1С
License: Mozilla Public License 2.0
Разработка с управляемым качеством на 1С
License: Mozilla Public License 2.0
Форма тест-клиентов
API
Например, Плагин.Команда()
или Плагин.Нажать
и т.п.
Функционал: Формировать инструкции пользователям без лишних и второстепенных шаго
Как бизнес аналитик
Я хочу формировать инструкции без доп. шагов, которые пользователю не интересны
Сценарий: Проигрывание сценария с тегом tree
Допустим: У меня есть сценарий с 10 шагам и 2мя группировочными шагами описывающими общее состояние системы
Когда: фича имеет тег tree и есть шаги оттделенніе дополнительніми tab символами
Тогда: проигрываются все шаги, но в инструкцию попадают группировочные шаги и скриншот прикладывается от последнего дополнительного шага.
Сейчас очень долго выполняется полная сборка на простом CI
Например, http://ci.silverbulleters.org/view/all/job/ADD%20test/job/feature%252Fci/25/ выполнялся 2 часа
Проверить:
наличие ненужных настроек в json
пройтись профайлером в Конфигураторе и выявить узкие места
Например, в одной строке
26.01.2018 16:16:28: ИНФОРМАЦИЯ - 26.01.2018 16:16:28: ИНФОРМАЦИЯ -
26.01.2018 16:16:28: ИНФОРМАЦИЯ -
Собирали: Close1C изменен c:\projects\SB\add-new\.forbuild\tools\epf\
Краткое описание проблем
Была фича с шагами и обработкой. Добавил еще шагов. Перегенерил EPF.
В процедуре ПолучитьСписокТестов старые тесты пропали, новые добавились
должны были новые процедуры добавиться, а старые должны были остаться
Сформулировать потребности!
Падающие тесты
allure-report.zip
Для ускорения сборки нужно явно указать, какие каталоги должны собираться.
Например, не все каталоги тестов и фич нужны при поставке библиотеки
что-то новая версия ВБ из девелопа очень хреново работает с шагами фич.
один раз открываешь фичу, шаги показаны как реализованные или не реализованные, нажимаешь Перезапустить или вручную переоткрываешь ВБ, состояние шагов меняется на обратное.
Иногда при каждом переоткрытии, иногда не сразу.
это касается как библиотечных шагов, так и своих шагов.
Пару раз мне даже сгенерился файл шагов со вставкой нереализованных библиотечных шагов в мой файл :(
Чистка кеша помогает не всегда :(
вчера реально задолбало такое поведение
https://github.com/silverbulleters/add/pull/29/files#r162786268
artbear:
Убрав вот этот код
ИмяФайлаОбъекта = ОбъединитьПути(ТекущийКаталог(), КаталогВыгрузки, ИмяПапки);
и вставив ниже ИмяФайлаОбъекта = КаталогВыгрузки;
мы получили проблему:
теперь lib\FeatureReader\vbFeatureReader.epf
собирается из исходников неверно.
Собирается файл FeatureReader.epf
, а не vbFeatureReader.epf
@nixel2007 @pumbaEO Как исправим?
@pumbaEO: Все верно, надо внутреннее имя переименовать.
Чек-лист:
Исправить внутреннее имя и синоним обработки vbFeatureReader.epf
Исправить обращение в коде 1С к этой обработке
Добавить информацию о необходимости запуска xUnitFor1C в 1С в русской локализации.
Иначе могут тесты могут остановиться/зависнуть, потому что 1С задает какие-то интерактивные вопросы при запуске через командную строку
Возможно, проблема в использовании русских имен плагинов и/или их файлов.
Список подзадач:
–language ru
при запуске 1Сvanessa runner xunit
@pumbaEO ну вообще, там надо проверять основной язык конфигурации и подменять слова "ВнешняяОбработка" и ".Форма." на английские и тогда будет все работать без проблем на любой локализации. И запуск с ru не поможет, если конфигурацию создали с en.
По мотивам поддержки курса ci-cd
vanessa-behavior.epf
в bddRunner.epf
Например, http://ci.silverbulleters.org/view/all/job/ADD%20test/job/feature%252Fci/51/allure/#
Базовая под 1С
на эту ноду накатываются обновления платформы 1С
Установка покрытия кода
md
feature
bsl
json
простой CI на ci.sb.org аналогично VB2
CI на ci.sb.org аналогично основному VB
Sonar
Параллельная сборка на разных платформах
Подготовка сборки типовой Windows и Linux ноды
Слить новые изменения из VB
УФ
модуль объекта
ОФ
Учесть, что в нашей версии есть изменения при чтении настроек
Настройки = Плагин("LoadSettings");
Другие формы
Макеты и другие метаданные
На базе VB2
В модуле Упр.формы ВБ есть много кусков кода с циклом по Объект.КаталогиБиблиотек
а внутри цикла элемент цикла не используется
т.е. ты цикл на самом деле не нужен :(
уточнение #18 (comment)
Для каждого Библ Из Объект.КаталогиБиблиотек Цикл
Ном = Ном + 1;
МассивДляПоискаДублейФайлов = ПолучитьМассивДляПоискаДублейФайлов(МассивФайлов);
МассивФайловБиблиотека = ПолучитьЗначениеПоРанееСобраннойИнформации(ДополнительныеПараметры, "БиблиотекаФич" + Ном, "НайденныеФайлы");
Для каждого Элем Из МассивФайловБиблиотека Цикл
Если МассивДляПоискаДублейФайлов.Найти(Элем.Файл.ПолноеИмя) <> Неопределено Тогда
Продолжить;
КонецЕсли;
МассивФайлов.Добавить(Элем);
КонецЦикла;
КонецЦикла;
Методы:
ПроверитьРавенствоТаблиц
СравнитьЗначенияТаблиц
ПроверитьРавенствоТабличныхДокументовТолькоПоЗначениям
Исправить в основном коде тестеров, заменив соответствующие вызовы внутри методов на методы нового плагина:
bddRunner (ОФ + УФ)
xddTestRunner (ОФ + УФ)
простой CI на ci.sb.org аналогично VB2
Sonar
Модуль объекта
УФ
ОФ
Плагины
На базе PR для ОФ xDrivenDevelopment/xUnitFor1C#772
Верхний эпик #14
Избавиться от tools\runner.os и перейти на использование vanessa-runner
Подробности в комментариях ниже
на базе https://github.com/pumbaEO/xUnitFor1Csrc
Все делаю несколько подходов к чтению реадми и никак понять с чего начать не могу
Документировать
Автоматизировать
Сценарий автотеста:
Удобно сделать через 1bdd сценарии
Сейчас при сборке обработок в каталогах lib/TemplateEpfUF
и lib/TemplateEpf
создается файл lib/Обработка.epf
При этом остается только один из этих файлов, а не появляются 2 файла.
Нужно добавить переименование файла обработки в lib/TemplateEpfUF.epf
и lib/TemplateEpf.epf
соответственно
Приложить пример jenkins-файла
запуск тестов
запуск фич
генерация отчетов Аллюр2 для фич и тестов
junit
артефакты
Перенести изменения по дымовым тестам ввода на основании из xDrivenDevelopment/xUnitFor1C#693
Методы:
ПроверитьРавенствоТаблиц
СравнитьЗначенияТаблиц
ПроверитьРавенствоТабличныхДокументовТолькоПоЗначениям
Исправить в основном коде тестеров, заменив соответствующие вызовы внутри методов на методы нового плагина:
bddRunner (ОФ + УФ)
xddTestRunner (ОФ + УФ)
Когда я закончил кодинг - я могу только декомпилировать шаги и BBDRunner, а сервисная базы если она поправлена выгружается вручную
Задокументировать в FAQ
Требуется убрать шаги из фич я нажимаю кнопку выбора у поля ""
для полей с датами
И я нажимаю кнопку выбора у поля "Дата начала"
И я нажимаю кнопку выбора у поля "Дата окончания"
Сделать плагин "Регулярные выражения"
Для Windows на базе Новый COMОбъект("VBScript.RegExp")
Для Linux использовать https://infostart.ru/public/464971/
Возможность предварительной компиляции выражения и многократного повторного использования скомпилированного выражения
ОФ
Новые шаги
Заменить вызовы СтрокаСоответствуетШаблону
на вызов метода плагина
@pumbaEO В курсе проблемы
Объединить метаданные конфигураций vb и xUnit
Исправить код тестов/фич
Проверить прогон тестов/фич
opm run vanessa
что не совсем отражает задачу проверки и может быть воспринято как все инструменты "ваннесЫ"с chcp
(до конца не исследовано)StepsDir
или аналога, чтобы EPF файлы могли использоваться из каталога Build#25 - сейчас локально добиться повторяемости сборки под Windows невозможно, если не иметь копию виртуалки с CI
#23 - есть определённый конфликт в запускателях/помогателях процесса сборки и тестирования
Подробнее знает @pumbaEO
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.