xUnitFor1C - набор инструментов для выполнения тестирования (модульного/юнит, приемочного, сценарного для 1С 8.3, интеграционного) в 1С:Предприятии 8

Публикация № 418168

Разработка - Инструментарий разработчика

xUnitFor1C xUnit тестирование TDD BDD сценарий поведение

177
xUnitFor1C - простой и мощный фреймворк для тестирования в 1С. Позволяет тестировать в разных режимах обычное приложение, тонкий и толстый клиент управляемого приложения. Поддерживаются любые платформы 1С - от 8.2.17 до 8.3.5 и выше. Любые наборы тестов могут прогоняться в полностью автоматическом режиме. Автозапуск используется в различных build-серверах в системах Continuous Integration. Также возможно очень простое создание тестовых данных на основании табличных макетов. Эти макеты можно генерировать из реальных боевых данных. Полученные данные в тестах загружаются одной строкой кода. В статье я кратко описал историю продукта + вставил небольшое описание различных возможностей нашего фреймворка + список полезных статей/примеров/видео, обучающих/рассказывающих о практическом применении инструмента

Для быстрого входа рекомендую почитать статьи или посмотреть видео или Посмотрите Wiki

xUnitFor1C работает с любыми конфигурациями, полностью независима, но может быть встроена в конфигурацию. Работает как в Windows, так и в Linux.

Тесты могут быть как во внешних обработках, так и во встроенных обработках.

Любые наборы тестов могут прогоняться в полностью автоматическом режиме через специальную командную строку запуска. Автозапуск используется в различных build-серверах в системах Continuous Integration.

Также возможно очень простое создание тестовых данных на основании табличных макетов. Эти макеты можно генерировать из реальных боевых данных. Полученные данные в тестах загружаются одной строкой кода.

Почитайте короткую инструкцию по установке фреймворка xUnitFor1C

В случае возникновения каких-то проблем при тестировании рекомендуем заглянуть на страницу Известные проблемы при тестировании

Оглавление:

  1. История тестирования в 1С-среде
  2. Статьи
  3. Видео
  4. Использование продукта
  5. Что к чему
  6. Как помочь проекту

История тестирования в 1С-среде 

 Работы по тестированию в 1С начались в сообществе 1С++ для 1С 7.7 еще в далеких 2003-2004 годах.

Я лично пришел в тестирование, когда меня сильно начали напрягать постоянные баги при выпуске новых релизов 1С ++ - одно чиним, другое ломаем. Сначала я начал выполнять работу тестировщика, далее перешел к автоматизации тестировании и непосредственной разработке на С++ для доработки 1С++.

Мной совместно с Федором Езеевым (он не так давно был руководителем отдела тестирования 1С в Яндексе) была создана специальная конфигурация для 1С 7.7 на базе 1С++ для приемочного и юнит-тестирования классов проекта внешней компоненты 1С++. Конфигурация оказалась очень удобной и сильно  помогала в разработке 1С++. За год участники проекта 1С++ написали более 1000 интеграционных тестов для классов/модулей 1С++.

В дальнейшем эта конфигурация не раз была использована в боевых системах. И даже пару лет назад мы ее применили для тестирования legacy-конфигурации розничных точек одного из крупнейших ритейлеров России, хотя и прошло более 8 лет с момента разработки в 77. Затем эта же конфигурации и полученные тесты были использованы для нагрузочного тестирования конфигурации.

Параллельно шла разработка проекта функционального/приемочного тестирования FuncTest (автор Федор Езеев). Основная схема работы - сравнение с образцом/ожиданиями. Мы совместно с Федором серьезно поработали над проектом для доведения до мощного юзабельного поведения.

Но время семерки уходило, приходила восьмерка. Нужно было реализовывать продукты тестирования и для восьмерки.

Я портировал проект FuncTest на 8.1 и 8.2. Так появилась Система тестирования функциональных тестов FuncTest для 1cv8.1 - версия 1.17

А Федор на форуме 1С++ параллельно инициировал работу над проектом модульного/юнит-тестирования, аналог xUnit от Кента Бека для 1С. Совместно мы создали специальную подсистему/конфигурацию для 1С 8.1 - тесты писались во внешних обработках. Этот проект - фактически "папа" нашего продукта. Все было очень удобно, но необходимость использования специальной конфигурации мешало в распространении проекта.

И вот в 2012 году, после первой конференции Инфостарт и моего выступления по методикам разработки/тестирования (если я не путаю), Александр Кунташов неожиданно, без объявление войны Smile взял и доработал продукт до универсального состояния, перенеся весь функционал во внешнюю обработку. Продукт стало возможным использовать в любых конфигурациях 1С, в т.ч. и на полной поддержке.

Так фактически и началась работа над продуктом xUnitFor1C.

Далее в проекте очень важные и активные роли сыграли Алексей Лустин и Евгений Сосна.

Сейчас это полноценный боевой продукт, использующийся в более 30 командах (информация от 2014 года) по России, Украине, Белоруссии.

За 3 года существования открытого проекта xUnitFor1C в него вносили правки аж 18 разработчиков Smile

Сейчас на билд-сервере прогоняется более 4500 тестов проекта в различном окружении, как Windows, так и в Linux.

Статьи

Видео

Использование xUnitFor1C

Запуск тестов из командной строки и получение файлов результатов

Генерация данных

Тесты открытия форм

Примеры тестов:

Скрипт для Snegopat "Добавить описание тестовых случаев текущего модуля в метод ПолучитьСписокТестов" (xUnitAddTestsDesc.js)"

Инструкция для контрибьюторов, т.е. для тех, кто жаждет доработать xUnitFor1C

Что к чему

  • xddTestRunner.epf - браузер и исполнитель тестов для обычного приложения и управляемого приложения 1С:Предприятия 8 (толстый и тонкий клиенты)
  • xddDataFixtureGen.epf - генерация макета данных для использования в тестах. Макет можно генерить из боевой базы на основе реальных данных.
    • Tests - каталог с примерами тестов и с тестами для самотестирования xddTestRunner.epf (подпапка selftests)
    • Tests\CommonApp\тесты_ОткрытиеФормКонфигурации.epf - тесты открытия всех форм справочников, документов, отчетов и обработок. Для справочников и документов в транзакции создаются новые или копируются или перезаписываются существующие элементы.
    • Tests\CommonApp\Тест_ЗапускТестовВСеансеДругихПользователей.epf - примеры запуска тестов для пользователей с ограниченными правами. Пользователи создаются на лету из простых макетов.
    • Tests\CommonApp\Тест_ПроверитьОтчетНаСоответствиеЭталону.epf - пример теста отчета путем сравнения с эталонным ожиданием из макета.

Как помочь проекту

Мы рады любой помощи:

1. Если вы занимаетесь разработкой на 1С:Преприятии 8 пробуйте писать и выполнять тесты при помощи xUnitFor1C, сообщайте нам об обнаруженных ошибках, пишите пожелания. Для управления сообщениями об ошибках и пожеланиями мы используем баг-трекер GitHub'а.

2. Если у вас есть время разобраться в исходном коде, вы можете взять на себя реализацию одной из открытых задач.

3. Если вы уже используете xUnitFor1C на практике, напишите об этом статью, например, на Инфостарте.

Инструкция для контрибьюторов, т.е. для тех, кто жаждет доработать xUnitFor1C

177

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. fishca 1154 13.11.15 15:51 Сейчас в теме
2. artbear 1156 13.11.15 16:16 Сейчас в теме
Специальный релиз - в пЯтницу 13 :)
3. artbear 1156 13.11.15 16:21 Сейчас в теме
Еще интересный факт о нашем проекте:
на днях на HeadHunter появилась вакансия, в требованиях к кандидату значится знание xUnitFor1C :)

У вакансии отличная формулировка, отличающаяся от стандартных формулировок.
Приветствуются полезные знания:
- юнит тестирования
- git
- xUnitFor1C
- TDD
- генерации документации по коду
Вообще хорошо, если 1С это не первый рабочий язык, а есть опыт работы в промышленной разработке.
4. lustin 13.11.15 18:50 Сейчас в теме
(0) Мою фамилию и видео уберите пожалуйста. ;-)

Если уж так старательно меня НЕ упоминал, то тогда убери вообще.




7. artbear 1156 15.11.15 19:13 Сейчас в теме
(4) Алексей, историю проекта я специально описал очень крупными вехами, чтобы не слишком большая статья получилась.
Конечно, упомянул не всех :( в первую очередь, тебя и Женю Сосну (pumbaE). Извиняйте.

Буду рад, если ты и Женя дополните эту историю.

ИМХО будет интересно составить общий рассказ-историю.
9. lustin 15.11.15 21:50 Сейчас в теме
(7) Да это уже и не важно теперь.

Странно что ты "случайно" забыл ссылку на мой github аккаунт. Выглядит некрасиво - поэтому прошу убери фамилию из статьи.
10. artbear 1156 16.11.15 09:07 Сейчас в теме
(9) Конечно, я его не забыл, а специально не указал, т.к. ты человек в среде 1С известный и ИМХО тебе не требуется специальных ссылок :)
Не думал, что это тебя так заденет :(
11. artbear 1156 16.11.15 13:26 Сейчас в теме
(9) Извини, оказывается, я указал твою фамилию без имени, некрасиво получилось :(
Добавил имя + ссылку.
PS копипаст = зло :(
13. zarucheisky 17.11.15 15:49 Сейчас в теме
(9)(10) Вы еще по-деритесь :)
5. kuntashov 364 15.11.15 01:58 Сейчас в теме
(0)
И вот в 2012 году, после первой конференции Инфостарт и моего выступления по методикам разработки/тестирования (если я не путаю), Александр Кунташов неожиданно, без объявление войны Smile взял и доработал продукт до универсального состояния, перенеся весь функционал во внешнюю обработку.


Ну если нужны какие-то более-менее точные вехи, то вот как-то так это было:



:)

В тот же день я тебе что-то отослал, ты как всегда наткнулся на кучу багов, какое-то время я это исправлял, а потом 29 ноября 2012 года, если верить githab'у, создал репозиторий (тогда еще 1CUnit),

А потом пошло-поехало: буквально через несколько дней присоединился к проекту Григорий Пташко (ему про нас рассказал Женя Сосна) и начал адаптацию под УФ, потом присоединился ты и пошло-поехало: с Лешей создали отдельную организацию на гитхабе (xDD - https://github.com/xDrivenDevelopment), я все, что сделали, передал туда, потом нас (кажется, Аристархов через Лешу) попросили не использовать приставку 1С (как раз 1С опубликовала правила), Леха согласовал "наверху", что вместо нее можно дописать "For1C" и мы переименовали проект в xUnitFor1C.

И вот теперь мы здесь :)
Прикрепленные файлы:
pbabincev; cleaner_it; artbear; JohnyDeath; +4 Ответить
6. lustin 15.11.15 12:13 Сейчас в теме
(5) Еще Палыч веселился на 1С++ тоже
JohnyDeath; kuntashov; +2 Ответить
8. artbear 1156 15.11.15 19:20 Сейчас в теме
(5) Саша, прикольно, оказывается, ты мне на мой день рождения подарок сделал :)

Насчет названия xUnitFor1C - Андрей Аристархов написал мне по названию 1CUnit, я уточнил, какой вариант устроит, был предложен суффикс for1C, я вышел на всех участников проекта (тебя, Алексея, Женю, Григория). Далее совместно мы решили поменять название на xUnitFor1C
pbabincev; kuntashov; +2 Ответить
12. Кузьмич 187 17.11.15 15:36 Сейчас в теме
недавно ткнули носом в ваш продукт (за что благодарен). всю жизнь тестировали вручную.
попробуем...
14. Кузьмич 187 17.11.15 16:06 Сейчас в теме
тестирую тестировщик
*стандартная УПП (свежий релиз). Тест на открытие форм. Ошибок масса :)
интересно, в общем.
15. Adept 23.11.15 10:08 Сейчас в теме
Народ, подскажите 4-ю верcию уже можно использовать(в частности интересует сценарное тестирование(ui))?
16. JohnyDeath 294 23.11.15 22:19 Сейчас в теме
(15) Adept, может про сценарное тестирование лучше вот сюда: https://github.com/silverbulleters/vanessa-behavior ?
17. artbear 1156 27.11.15 10:31 Сейчас в теме
(15) 4ю версию, конечно, можно использовать.
сценарное тестирование в ней также работает.
19. JohnyDeath 294 15.01.16 20:53 Сейчас в теме
(17) Артур, а почему 4-я версия до сих пор в отдельной ветке и даже не в drvelop?
Или же решили 4-ю версию отдельным продуктом сделать?
18. tivanitsky 12 14.01.16 17:53 Сейчас в теме
Спасибо за хороший продукт, ребята! :-)
Он мотивировал меня перейти к разработке через тесты.
20. BlizD 656 03.06.16 11:22 Сейчас в теме
Добрый день.

Испытываю уверенность, спокойствие и мощное эстетическое удовольствие, когда все тесты горят зеленым, хотя до этого сделал серьезный рефакторинг метаданных.
Прям ощущается магия какая то=)

Большое спасибо за разработку.
21. artbear 1156 03.06.16 14:41 Сейчас в теме
(20) Да, зеленая полоса очень мотивирует и вдохновляет - это известный факт.

Спасибо за отзыв.

PS помни, что никакое тестирование никогда не найдет все ошибки !
22. BlizD 656 03.06.16 14:59 Сейчас в теме
(21)

"PS помни, что никакое тестирование никогда не найдет все ошибки !"

да это помню и понимаю, но как минимум то, что проверял бы руками можно зашить в тесты.
Ну и на каждый баг, тоже делать тесты, тогда таких не найденных ошибок будет меньше.
23. artbear 1156 04.06.16 11:38 Сейчас в теме
(22) BlizD, да, конечно, ты описываешь правильный путь.
24. Diversus 2011 15.06.16 15:49 Сейчас в теме
(23) Артур, приветствую! Я так понимаю избавляться от модальности xUnitFor1C не хочет? Когда ориентировочно планируется поддержка асинхронности и отказ от модальности?
25. artbear 1156 16.06.16 20:09 Сейчас в теме
(24) Привет, Виталий.
Планируется, но по срокам сложно сказать. open-source :)
Если кто-нибудь доработает этот функционал, буду очень рад.

Тем более, что сейчас при использовании плагинов, переделка уже не так трудоемка.
26. kraynev-navi 421 25.07.16 11:13 Сейчас в теме
Несколько вопросов в контексте сценарных тестов.
Не совсем до конца понимаю как все-таки делать правильно.
Задача.
Создаю из макетов цепочку тестовых документов. Скажем, поступление, две последовательных корректировки, формирование записей книги покупок (для БП).
Провожу, заполняю, провожу, сравниваю с эталонными значениями.
Правильно ли делать так или есть более верная методика?

0. Удаляются ранее созданные документы (Подсмотрено у acsent из http://infostart.ru/public/517549/ )
1. Создаю из макетов цепочку тестовых документов. Поступление, две последовательных корректировки, формирование записей книги покупок (для БП).
2. Провожу документ корректировки. Проверяю (тест)
3. Провожу второй документ корректировки. Проверяю (тест)
4. Делаю заполнение формирования. Проверяю (тест)
5. Делаю проведение формирования. Проверяю сверкой с эталоном (тест)

Если тест падает в начальных пунктах, скажем в 2, то смысла делать 3-5 нету.
По факту сценарный тест идет до конца, что занимает время и идет в разрез с утверждением, что тесты должны идти быстро.
Почему, кстати, он идет до конца? Ведь
на странице https://github.com/xDrivenDevelopment/xUnitFor1C/wiki/%D0%A1%D1%86%D0%B5%D0­%BD%D0%B0%D1%80%D0%BD%D1%8B%D0%B5-%D1%82%D0%B5%D1%81%D1%82%D1%8B---%D1%81%D1%86%D0%B5%D0%BD%D0%B0%D1%80%D0%B8%D0%B8-%D0%B2-%D0%B2%D0%B8%D0%B4%D0%B5-%D1%81%D0%B2%D1%8F%D0%B7%D0%B0%D0%BD%D0%BD%D1%8B%D1%85-%D0%B8-%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D1%82­%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D1%85-%D1%88%D0%B0%D0%B3%D0%BE%D0%B2
например. если в одном из шагов теста будут ошибки, все остальные шаги/тесты будут выполнены и до последнего теста дело не дойдет. Следовательно, операция завершения выполнена не будет.

Версия xUnit1C 4

p.s. В статье ссылка на сценарное тестирование ведет на главную вики. Кстати, некоторые примеры в вики ведут на 404-ю. Вероятно, сказывается переход к 4.0.
27. artbear 1156 25.07.16 16:09 Сейчас в теме
(26) kraynev-navi,
В доке по указанной ссылке написано самое важное
Процедура ЗаполнитьНаборТестов(НаборТестов) Экспорт

    НаборТестов.НачатьГруппу("Тестовый сценарий", Истина); // ВОТ ЗДЕСЬ
    НаборТестов.Добавить("ТестДолжен_СохранитьКонтекст");
    НаборТестов.Добавить("ТестДолжен_ПроверитьСохраненныйКонтекст");

КонецПроцедуры


у тебя такой код используется для создания сценарных тестов?

В статье ссылка на сценарное тестирование ведет на главную вики.

Исправил.

Кстати, некоторые примеры в вики ведут на 404-ю. Вероятно, сказывается переход к 4.0.

Подскажи, какие ссылки неверные, поправлю.
Спасибо, жду.
28. kraynev-navi 421 25.07.16 16:26 Сейчас в теме
(27) Истину-то я и не приметил, походу из третьей версии переносил. С истиной, работает, спасибо!
Про битые ссылки, бегло вот:
https://github.com/xDrivenDevelopment/xUnitFor1C/wiki/%D0%93%D0%B5%D0%BD%D0­%B5%D1%80%D0%B0%D1%86%D0%B8%D1%8F-%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85
ссылка с Пример кода тестов генерации данных (из репозитария)
как буду еще читать вики, перечень тогда составлю.

Вопрос еще был:
Правильно ли делать так или есть более верная методика?
29. artbear 1156 25.07.16 21:16 Сейчас в теме
(28) kraynev-navi,
ссылка с Пример кода тестов генерации данных (из репозитария)

Спасибо. Исправил обе ссылки.

Правильно ли делать так или есть более верная методика?

Для xUnitFor1C 4.X это правильная методика.
30. vsbronnikov 69 07.02.17 12:00 Сейчас в теме
Подскажите как Вы запускаете 1С из командной строки linux (у которой не установлено графического окружения)?
31. artbear 1156 07.02.17 14:44 Сейчас в теме
(30) А как без графического интерфейса запускать 1С, которая является графической системой :) ??
или речь только о регламентных заданиях ?
32. vsbronnikov 69 07.02.17 18:20 Сейчас в теме
Нет. Речь идет о запуске 1С (в частности конфигуратора) из командной строки в пакетном режиме. Передал параметры командной строке типа "Выгрузить *.dt" или "Обновить конфигурацию из хранилища". 1С выполнил и закрылся.
33. Alligator84 64 31.10.17 07:51 Сейчас в теме
Всем привет, инструмент действительно крутой!
Спасибо всем разработчикам и участвующим.
У меня вызывает стопор один момент.
Делаю так: создаю обработку с перечнем тестов, переменными в процедурах из модуля формы и открываю её в xddTestRunner.
Вопрос: как протестировать код из модуля формы, а точнее передать значение переменных?
Это пока главный стопор в начинаниях по переходу на написания кода через TDD.
Возможно, я не понял принцип тестирования/инструмента.
Буду благодарен за помощь.
34. artbear 1156 31.10.17 10:22 Сейчас в теме
(33) Читаем офиц.доку, открывая сайт https://github.com/xDrivenDevelopment/xUnitFor1C
и находя строку "Для быстрого входа рекомендуем", далее в этом предложении есть ссылка для быстрого входа :)
35. Alligator84 64 31.10.17 11:19 Сейчас в теме
(34) Артур, спасибо за отклик. Ещё раз перечитаю.
Активно читаю последнее время.
Накапливаются вопросы когда переносишь теорию на практику.
38. ImHunter 161 27.11.17 08:59 Сейчас в теме
(33) (34) Для тестирования кода модуля упр формы - быстрый вход как-то неявно описан:) С третьего-четвертого захода нашел, как это делается.
Смысл в том, что список тестов и сами тесты можно писать и в коде упр. формы обработки (ссылка). Причем, и в модуле самой обработки - тоже можно свой список и тесты писать. И тогда будут видны два списка тестов.
39. artbear 1156 27.11.17 10:49 Сейчас в теме
(38) Да, в этой статье я этот момент пропустил.
Но на официальном сайте есть дока с примерами.

Создание файлов-тестов

Примеры тестов
40. artbear 1156 27.11.17 10:54 Сейчас в теме
(38) Добавил ссылку на примеры тестов для управляемой формы в статью.
41. akivvika 20.02.18 11:09 Сейчас в теме
(40) Добрый день! Подскажите пожалуйста по такому вопросу: если у меня есть юнит-тест написанный в модуле управляемой формы но для него мне необходимы данные из макета.
Загрузка данных производится из макета на клиенте.
Есть
&НаСервереБезКонтекста 
Процедура ПередЗапускомТестаНаСервере()
	НачатьТранзакцию();	
КонецПроцедуры

Есть
&НаСервереБезКонтекста 
Процедура ПослеЗапускаТестаНаСервере()
    Если ТранзакцияАктивна() Тогда
        ОтменитьТранзакцию();
    КонецЕсли;
КонецПроцедуры

Но после выполнения шагов транзакция уже не активна и соответственно не откатывается.
Судя по всему для отката транзакции весь код должен выполняться не сервере. А как тогда быть в таком случае?
42. artbear 1156 20.02.18 16:51 Сейчас в теме
(41) При работе в Упр.форме * транзакции не возможен, т.к. работа идет на клиенте, а транзакция возможна только при вызове внутри серверного кода.
Вывод:
+ либо удаляем созданные данные вручную
+ либо вообще их не удаляем :)
43. akivvika 20.02.18 16:54 Сейчас в теме
(42) Ну вообщем то так и пришлось сделать - удалять созданные данные. Спасибо!
36. VickWood 02.11.17 11:10 Сейчас в теме
Добрый день!
А подскажите, можно как-то протестить отдельную внешнюю обработку? Или обработка должна быть встроена в конфу и тогда уже тестировать всю конфигурацию?
37. artbear 1156 26.11.17 17:33 Сейчас в теме
(36) Пропустил Ваше сообщение.

Конечно, можно протестировать отдельную внешнюю обработку.
Это несложно.
44. Vladimir Litvinenko 12.06.18 01:58 Сейчас в теме
(37)
Цитата из публикации:
xUnitFor1C работает с любыми конфигурациями, полностью независима, но может быть встроена в конфигурацию


Есть ли где-то информация, как использовать xUnitFor1C как встроенную в конфигурацию подсистему?

Интересует не только использование самой обработки xddTestRunner.epf но и плагинов, например плагина "Настройки.epf".
Столкнулся с тем, что файл, содержащий исключения для тестов, не загружается. Ошибок нет, но тесты не отмечаются как исключаемые. Хотел произвести отладку, но система работы через плагины-внешние обработки приводит к тому, что в тонком клиенте нельзя выполнить пошаговую отладку методов этих плагинов. Например вызова ПлагинНастроек.Обновить(). Отладка по F11 в этом случае не работает должным образом.

Изучению инструмента могло бы помочь встраивание обработок в конфигурацию. В документации к xUnitFor1C сказано что такая возможность есть.

Нашел в коде, что если обработки встроены в конфигурацию, то плагины будут искаться как встроенные обработки, входящие в состав подсистемы конфигурации <ИспользуемыйПрефиксПодсистемы>xUnitFor1C.Plugins. Но создавать эти подсистемы вручную было бы сложно. В то же время в репозитории никаких cf-файлов для объединения с конфигурацией не обнаружил.

Сохранилась ли до сих пор возможность встроить подсистему в тестируемую конфигурацию?
45. artbear 1156 13.06.18 13:35 Сейчас в теме
(44) 1 Встраивание как подсистемы - сложный процесс и у него сейчас очень мало сторонников :(
Я, например, не использую этот механизм вообще.

2 развитие xUnitFor1C ушло в сторону "сводного" продукта ADD (vanessa-add) https://github.com/silverbulleters/add

сам xUnitFor1C пока никто не развивает, все силы мы будем отдавать на ADD

в новом релизе ADD, который будет выпущен на днях, как раз реализован обычный=привычный способ отладки как плагинов, так и самих тестов.

PS кстати, для ADD у нас есть планы сделать расширение в дополнение к варианту на внешних обработках, но эти планы пока довольно отдаленные.
Оставьте свое сообщение

См. также

FastCode - сервис поиска кода 1С 48

Инструменты и обработки Программист Архив с данными v8 Бесплатно (free) Инструментарий разработчика

Добавляйте свои шаблоны кода или ищите готовые шаблоны других разработчиков. Оставляйте отзывы и лайки, добавляйте понравившиеся фрагменты в свою библиотеку. Ищите по БСП или по общим модулям своей конфигурации.

10.09.2019    4753    m.bolsun    21       

Как мы разрабатываем в EDT 63

Статья Программист Нет файла v8 Бесплатно (free) EDT

EDT – это новая среда разработки, на которую сейчас перешли разработчики фирмы «1С». Однако до сих пор существует ряд «белых пятен», касающихся как теоретической, так и практической части применения этого инструмента. Про опыт перехода на разработку в EDT на конференции INFOSTART EVENT 2018 EDUCATION рассказал начальник сектора разработки в компании «Группа Полипластик» Владимир Крючков.

23.08.2019    5044    ivanov660    21       

1С:EDT. Первые шаги… или есть ли альтернатива конфигуратору? 81

Статья Программист Нет файла v8 Windows Бесплатно (free) EDT

Заменить конфигуратор сложно, а в некоторых случаях невозможно, если, например, нужно оперативно подправить код непосредственно в рабочей конфигурации…

15.08.2019    7569    ellavs    76       

СКД - использование расширений языка запросов, секция ХАРАКТЕРИСТИКИ 134

Статья Программист Нет файла v8 v8::СКД Бесплатно (free) Инструментарий разработчика Практика программирования Разработка

Автоматическое и не автоматическое заполнение полей компоновки данных. Использование расширений языка запросов для СКД «{…}», секция ВЫБРАТЬ, секция ГДЕ, параметры виртуальных таблиц. Автоматизированное использование дополнительных данных в запросе: секция ХАРАКТЕРИСТИКИ.

17.07.2019    8435    ids79    24       

Групповая обработка (Управляемая консоль отчетов) 26

Статья Программист Нет файла v8 v8::УФ v8::Запросы 1cv8.cf 1С:Франчайзи, автоматизация бизнеса Бесплатно (free) Обработка документов Инструментарий разработчика Обработка справочников

Статья предназначена тем, кто понимает, зачем нужна групповая обработка в консоли запросов. Рассматривается групповая обработка в консоли Управляемая консоль отчетов.

13.05.2019    3441    Evg-Lylyk    6       

Генератор данных. 1С:Управление торговлей 11 5

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::ОУ УТ11 Оптовая торговля, дистрибуция, логистика Абонемент ($m) Универсальные обработки

Устал от ФедороваБМ, женских ботинок и настольных вентиляторов из демо базы 1С? Тогда тебе нужен новый генератор данных, заходи!

3 стартмани

23.04.2019    1688    1    ogre2007    0       

Перенос и резервное копирование настроек конфигуратора 55

Статья Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Инструментарий разработчика

Удобный перенос между рабочими местами и резервное копирование настроек конфигуратора через подсистему "Инструменты разработчика".

14.04.2019    4931    tormozit    18       

Как добавить типовую форму для СКД (для начинающих) (1С 8.3, управляемые формы) 9

Статья Программист Стажер Нет файла v8 v8::УФ v8::СКД Бесплатно (free) Инструментарий разработчика Работа с интерфейсом

Кастомизация СКД, нестандартная расшифровка, загрузка параметров и другие действия требуют наличия формы отчета. При создании СКД отчета по умолчанию форма не создается, в большинстве случаев это и не требуется. Однако при ситуациях, перечисленных выше, форму все же нужно создать. Это простая инструкция по созданию такой типовой формы.

25.03.2019    5272    ellavs    9       

Git + 1С. Часть 2. Реализация Git workflow в 1С-разработке по шагам 128

Статья Системный администратор Программист Нет файла v8 1cv8.cf Бесплатно (free) Инструментарий разработчика Управление проектом

В этой части мы рассмотрим наиболее распространённую схему workflow при групповой разработке с использованием Git. Как приступить к доработке по поставленной задаче; исправить ошибку, обнаруженную на этапе тестирования; отправить свой код на слияние в предстоящий релиз; и т.д. Постараемся охватить большинство задач, составляющих основной цикл разработки

28.01.2019    9695    stas_ganiev    18       

Автоматизация тестирования с помощью WinAutomationUI 28

Статья Программист Нет файла v8 Бесплатно (free) Инструментарий разработчика

Рассматривается использование инструмента WinAutomationUI для создания автоматизированных сценарных тестов на примере 1 + 1 = 2.

11.12.2018    3862    AlexKo    30       

[8.3] Анализ планов запросов (Управляемая консоль отчетов) 131

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Консоль запросов

Новый инструмент! Позволяет удобно работать с планами запросов, анализ планов в файловой базе.

19.11.2018    13900    Evg-Lylyk    6       

Метрики, графики, статистика = Prometheus + Grafana 108

Статья Программист Нет файла v8 v8::ОУ Россия Бесплатно (free) Инструментарий разработчика

Снятие метрик из базы данных 1С с хранением в Phrometheus и красивое оформление на основе Grafana. Или как мы создавали комфортные условия административному персоналу на отдельно взятом складе.

23.10.2018    9466    197    freewms    64       

Git + 1С. Часть 1. Как подключиться к команде разработки и начать использовать Git 266

Статья Системный администратор Программист Нет файла v8 1cv8.cf Бесплатно (free) Инструментарий разработчика Управление проектом

Первая статья из цикла инструкций по работе с Git в 1С-разработке. Рассмотрим, как настроить рабочее место, как получить свою "копию" проекта для разработки и приступить к полезным действиям. Все примеры будут изложены в рамках трёх практических кейсов: 1. Моя команда дорабатывает типовую конфигурацию, использует приватный репозиторий на BitBucket, в котором версионируются внешние отчеты/обработки, расширения конфигураций и правила обмена; 2. Я участвую в стартап-команде, которая разрабатывает свою конфигурацию с использованием Git и GitLab; 3. Я принимаю участие в развитии OpenSource-продукта на GitHub как заинтересованный разработчик (контрибьютор).

18.10.2018    33271    stas_ganiev    72       

Взгляд на практику разработки в EDT из зазеркалья 115

Статья Системный администратор Программист Нет файла v8 1cv8.cf Бесплатно (free) EDT

В данной статье расскажем о практическом опыте использования разработки в EDT: немного про интерфейс, командную разработку и GIT.

26.07.2018    17262    ivanov660    104       

Практика применения инструментов продвинутого разработчика 1С 155

Статья Программист Нет файла v8 Бесплатно (free) Инструментарий разработчика

Статья адресована разработчикам. Будет чуть-чуть теории, будут воспоминания, и потом пойдет практика.

23.07.2018    19496    artbear    22       

Лайфхак: исходники внешних обработок и отчетов 1С - это просто. 33

Статья Программист Нет файла v8 Бесплатно (free) Инструментарий разработчика

Важно: статья далеко на любителя всяких таких git'ов, gitlab'ов и oscript'ов.

22.06.2018    7582    new_user    11       

Создание поставки конфигурации 97

Статья Системный администратор Программист Нет файла v8 Windows Бесплатно (free) Инструментарий разработчика

Пошаговая демонстрация создания поставки конфигурации, файлов обновления и настройка для обновления через FTP.

27.02.2018    13367    Vladimir_412    6       

Тестирование интерфейса в обычном приложении 8.2 при помощи SikuliX 105

Инструменты и обработки Системный администратор Программист Архив с данными v8 1cv8.cf Windows Абонемент ($m) Инструментарий разработчика Работа с интерфейсом

Как же не хватает клиента тестирования на платформе 8.2. Не кликнешь на кнопку, не выберешь из списка, не проверишь видит ли надпись пользователь. Воспользуемся внешним инструментом SikuliX, который позволит нам протестировать функционал форм. Данный инструмент легко встраивается в линию сборки и может "дружить" с уже известным многим Open-source продуктами.

1 стартмани

03.01.2018    19548    2    kraynev-navi    40       

Легкий способ обновления измененной конфигурации 41

Статья Системный администратор Программист Нет файла v8 Бесплатно (free) Инструментарий разработчика

Легкий способ обновления измененной конфигурации. Сервис подготовки расширения конфигурации

25.10.2017    18489    avk72    63       

Согласование (подсистема). Для любого справочника и документа в 1С. Встраивается в любые конфигурации 127

Инструменты и обработки Пользователь Руководитель проекта Архив с данными v8 1cv8.cf БП3.0 КА2 УУ Документооборот и делопроизводство Абонемент ($m) Управление бизнес-процессами (BPM) Обработка документов Обработка справочников

Подсистема для согласования в 1С. Для настройки нового согласования не требуется программировать, все делается в режиме исполнения. Открытый код. Бизнес-процессы. Документооборот. Проект выложен на GitHub.

1 стартмани

25.08.2016    36693    218    BlizD    179       

Консоль запросов для УФ с возможностью передачи готовой ТЗ в качестве параметра 15

Статья Программист Нет файла v8 v8::УФ Россия Windows Бесплатно (free) Консоль запросов

Небольшая статья о том, как передать готовую таблицу значений в качестве параметра запроса в консоли запросов.

11.07.2016    12445    vadim1011985    7       

Поиск несериализуемых значений при помещении в хранилище 12

Статья Программист Нет файла v8 Windows Бесплатно (free) Инструментарий разработчика Практика программирования Универсальные функции

В статье разобран пример, как найти несериализуемые значения в случае помещения в хранилище коллекций, содержащих вложенные элементы. В качестве хранилищ рассмотрены временное хранилище значений и переменные типа ХранилищеЗначения.

02.03.2016    20002    balanton    2       

Подсветка синтаксиса 1С в текстовых редакторах Atom, Sublime Text, VS Code 101

Статья Системный администратор Программист Нет файла v8 1cv8.cf Бесплатно (free) Инструментарий разработчика Разработка внешних компонент

Пакеты, добавляющие поддержку синтаксиса языка 1С:Предприятие 8 в текстовые редакторы Atom, Sublime Text и VS Code. И не только.

02.02.2016    22666    nixel    38       

Дай дернуть! О веб-сервисах, Linux'ах и добрых поисковых сайтах 60

Статья Программист Нет файла v8 1cv8.cf Linux Бесплатно (free) Инструментарий разработчика Администрирование данных 1С WEB

О веб-сервисах, апачах и *nix'ах. - установим на новенький убунту старенький апач с php. - дернем сервис из php-скрипта. - создадим приложение, позволяющее дергать произвольный сервис с произвольными данными. - ну и что там получится по пути в лес...

30.12.2015    22434    starik-2005    4       

Сервис обмена кодом 28

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Инструментарий разработчика

Бывало так, что вам нужно быстро показать кому-то свой код, но опубликовать его негде, так как популярные сервисы просто не поддерживают раскраску кода 1С? Теперь решение есть!

26.06.2015    17750    Infactum    23       

Многопоточность в 1С, клиент-серверный вариант 59

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Инструментарий разработчика Математика и алгоритмы

Многопоточность - это свойство системы выполнять одновременно более одной операции (в пределе - более одной программы), позволяя в ряде случаев добиться существенного роста производительности программного продукта...

21.06.2015    30132    starik-2005    50       

Универсальная функция для программного выполнения СКД 110

Статья Программист Нет файла v8::СКД 1cv8.cf Windows Бесплатно (free) Инструментарий разработчика Универсальные функции

Часто встречаются вопросы на форумах о программном формировании СКД. Вроде и информации много по этому поводу, но... Все как всегда :) Собственно, в описании без лишних слов выложен текст общей функции, в которую, для выполнения отчета, нужно передать (минимум 2 параметра): СКД и ТабличныйДокумент.

20.05.2015    26579    dj_serega    18       

1C:Enterprise Development tools (EDT) или кодим в Eclipse 254

Статья Программист Нет файла v8 Windows Бесплатно (free) EDT

Как и выход мобильной платформы был для оооочень большого числа разработчиком открытием, так и я уверен, что и о новом конфигураторе - тоже мало кто слышал. Поэтому давайте попробуем пробежаться по новому конфигуратору. (Много больших картинок)

11.04.2015    70729    DitriX    297       

Написание простой обработки через тестирование 65

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Математика и алгоритмы Практика программирования

Раньше я считал, что в 1С невозможно юнит-тестирование (ведь тут нет вездесущих объектов, привычных классов и и. т.). Иногда на Инфостарте появлялись специализированные обработки, но часто они скорее отпугивали от темы тестирования, чем привлекали к ней. Потом я узнал про xUnitFor1C. Оказалось, что тестирование в 1С в общем не так уж и сложно, даже в сравнении с другими языками. В данной статье я расскажу о своем первом опыте.

1 стартмани

24.02.2015    23386    16    Alien_job    40       

Механизмы тестирования в 1С. Использование методики TDD (разработка через тестирование) в 1С 216

Статья Программист Нет файла Windows Бесплатно (free) Практика программирования Математика и алгоритмы

Данная статья написана по материалам доклада, прочитанного автором на первой конференции инфостарта 2012 года. Она опубликована в журнале Инфостарта №1.

09.02.2015    69471    artbear    54       

Перевод интерфейса конфигурации с использованием программы 1С:Переводчик 33

Статья Программист Нет файла v8 Бесплатно (free) Инструментарий разработчика

Перевод текстов интерфейсов конфигураций без использования технологии памяти переводов приводит к рассогласованности терминологии, когда один и тот же объект в конфигурации в разных меню может называться по-разному. Решить эту проблему можно используя программу 1С:Переводчик.

09.02.2015    28187    boogie    21       

Генерация кода управляемой формы (декомпиляция элементов) 510

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Бесплатно (free) Инструментарий разработчика Практика программирования Работа с интерфейсом

Изменение форм типовых конфигураций лучше выполнять программно. Эта обработка упрощает добавление элементов на форму, генерируя код создания элементов, реквизитов и команд формы.

29.09.2014    92338    8926    ekaruk    123       

Типовой механизм упрощенного изменения конфигурации в ERP 2.0 и УТ 11 212

Статья Системный администратор Программист Нет файла v8 УТ10 ERP2 Windows Бесплатно (free) Инструментарий разработчика Практика программирования Работа с интерфейсом

В ERP 2.0 (и соответственно в УТ 11) появился функционал для упрощенной возможности модификации конфигурации разработчиками. Он касается в частности изменения форм объектов и размещения подписок на элементы, теперь задача изменения конфигурации на поддержке упростилась. Также появились дополнительные возможности в новой версии платформы 8.3.5, которые также упростят задчу.

22.09.2014    49468    ivanov660    49       

Просмотр SQL-таблиц из 1С. Возможность очистки таблиц 26

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Бесплатно (free) Инструментарий разработчика

Обработка позволяет соединиться с SQL-сервером (SQL-авторизация), получить список баз на сервере, после выбора базы - получить список таблиц. Позволяет вывести таблицу на просмотр, при необходимости очистить таблицу средствами SQL (delete from), просмотреть соответствие имен таблиц объектам конфигурации, в которой запущена база

29.08.2014    18575    377    Abadonna    4       

TurboConf:Шаблоны - сервис для поиска и хранения фрагментов кода 43

Статья Системный администратор Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Инструментарий разработчика

Сервис добавляет в Конфигуратор возможность поиска и хранения фрагментов кода. Делитесь своими шаблонами с другими разработчиками или используйте уже готовые!

13.08.2014    19801    m.bolsun    68       

Консоль запросов. Очередная гайка. 18

Статья Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Консоль запросов

Небольшое дополнение к консоли запросов. Позволяет создавать функцию вместе с текстом запроса.

23.07.2014    6401    mdmdvd    3       

Конвертер юникода в кириллицу 8

Статья Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Инструментарий разработчика

Как преобразовать строку на юникоде в строку на кириллице, например, вот это: "/u042E/u043D/u0438/u043A/u043E/u0434" в это: "Юникод"

25.04.2014    9816    Mart    1       

Сохранение в Excel из WEB-клиента 13

Статья Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Инструментарий разработчика

Не всегда корректно отрабатывает сохранение в Excel из 1C при работе в WEB-клиенте. Мне попалась ситуация, когда не отрабатывал код "ТабличныйДокумент.Записать(...)" и выдавалась ошибка "неизвестная ошибка.: object doesn't support this property or method" Ниже предложена процедура сохранения в Excel, корректно работающая во всех типах подключения.

24.04.2014    18301    Tavalik    1       

Подсистема "COMExchange": консоль запросов в режиме «Консоль кода». 8

Статья Системный администратор Программист Нет файла v8 1cv8.cf Россия Windows Бесплатно (free) Консоль запросов

Описана возможность использования обработки «Консоль запросов 1С+ADO» в качестве «консоли кода». При этом имеется возможность помещения результатов вычислений в «табло формул». Кроме результатов вычислений в это «табло» можно также вывести время выполнения и описание обработанных ошибок времени исполнения.

03.04.2014    23340    yuraos    2       

Автоматизированное тестирование в 8.3 163

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Инструментарий разработчика

В данной статье будет рассмотрен новый механизм системы "1С:Предприятие 8" поддерживаемый начиная с платформы версии 8.3. Механизм позволяет легко и быстро создавать различные сценарии тестирования, без необходимости написания сложных процедур и функций для имитации действий пользователя.

06.03.2014    54269    M.Shalimov    45       

Изменение данных среды выполнения «на лету» в процессе отладки с помощью внешней обработки 9

Статья Программист Нет файла v8 Windows Бесплатно (free) Инструментарий разработчика

Иногда бывают такие моменты, что при остановке во время отладки необходимо «на лету» поменять какое-то значение реквизита или переменной. Или даже выполнить какой-то совершенно посторонний кусок кода в то время пока программа стоит на точке.

13.02.2014    7777    Рэйв    7       

Перенос таблицы значений между клиентом и сервером 50

Статья Программист Нет файла v8 1cv8.cf Россия Windows Бесплатно (free) Инструментарий разработчика Практика программирования

Всем привет. Бывают такие моменты, когда необходимо таблицу значений передать с сервера на клиент, увы, Мутабельные значения и т.д. В тоже время есть возможность перекидывать все это добро через Хранилище, чем собственно разработчики часто пользуются. Но сегодня я бы хотел вынести на Вашу критику вот такой пример переноса. Сильно не пинайте.

10.12.2013    76293    Draconus    35       

Native ВК для 1CV8: независимое чтение файлов *.xls и *.xlsx 152

Инструменты и обработки Программист Архив с данными v8 Россия Windows Бесплатно (free) Инструментарий разработчика

Не требует установленного в системе Microsoft Office (Excel) и Open Office. Технология Native, не требует регистрации в реестре

15.08.2013    28351    383    Abadonna    161       

Свойства файла (версия, ширина/высота изображения и т.д.) 6

Статья Программист Нет файла v8 Windows Бесплатно (free) Инструментарий разработчика

Получение дополнительной информации о файле средствами Windows. Получаем сведения о разработчике, версии программы, размеров изображения и т.д.

29.07.2013    10793    zsrg    1