Тестирование - игровое моделирование

Публикация № 1644998 25.04.22

Приемы и методы разработки - Тестирование QA

Мы рассмотрим подход к тестированию с применением элементов искусственного интеллекта

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

Хочу показать, что тестирование тоже может быть интересной игрой. Что это не скучное серое тыканье кнопок, а занимательный и залипательный процесс. Все зависит от подхода. Поехали! 3..2..1..

 

 

Небольшая предыстория

 

Идею данного подхода мы начали рассматривать еще в далеком 2018 году. Однако в тот момент у нас не было достаточно хорошего и проработанного инструмента. Но мы не унывали и постепенно дорабатывали концепцию и инструменты.

Мы обсуждали с коллегами вопросы в тестировании на форумах, на различных конференциях по тестированию SQA Days, TestСonf, при личном общении. Мнений достаточно много и они отличаются в деталях. С нашей точки зрения основная цель развития тестирования в том, чтобы инструменты позволяли упрощать процесс создания сценариев, чтобы было можно делать меньше телодвижений, а еще лучше чтобы это все само работало) Вообще использование элементов искусственного интеллекта (AI) это актуальное и перспективное направление.

Использовать будем открытый Фреймворк «Тестирование 3.0» (https://github.com/ivanov660/TestingTool-3), но вам никто не мешает попробовать применить данный концепт к другим доступным инструментам  Ванесса, Тестер и другие доступные для сообщества 1С.


В чем заключается идея?

 

Изначально давайте рассмотрим прикладной процесс работы пользователей в бизнес приложении на платформе 1С в конфигурации ERP (УТ, КА). У нас с вами есть некоторая демонстрационная компания, которая работает в этом приложении. На самом деле в каждом конкретном случае будет своя структура взаимоотношений, которую будет необходимо оцифровать.

Эта работающая структура представляется как набор некоторых шестеренок/винтиков. Каждый из винтиков который является сотрудником, которые выполняют определенную работу. Этот сотрудник обычно ограничен в области возможностей и рамок (администратора мы не рассматриваем). Он имеет ограничения по правам доступа, возможностям создавать определенные документы, справочники, т. е. некоторой должностной инструкцией. Такая высокоспециализированная функциональная шестеренка. Вы можете конечно можете накладывать наборы функций на одного сотрудника, но от этого атомарные функции не меняются, вы просто расширяете рамки. И с этой точки зрения функциональный сотрудник идеально подходит под наши цели. Мы заменяем этих сотрудников некоторыми умными скриптами.

Обычно чтобы работало предприятие нам требуется выполнение набора некоторых задач — продажа, закупка и/или производство, выдача товаров, отгрузка/приемка и управление оплатами. Поэтому нам нужен некоторый набор этих винтиков. Давайте определимся с ним:

  • менеджер, это тот кто фактически будет выводить нашу систему из равновесия, связываться с клиентом и «продавать» товар;
  • снабженец — тот кто будет выполнять закупку товаров, сырья для производства;
  • кладовщик — тот кто будет отгружать/принимать товар;
  • бухгалтер — тот кто выполняет операции по приему денег от клиента или выполнять оплаты закупок;
  • оператор цеха — это тот кто будет выполнять производство продукции;
  • и др.

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

 

 

На картинке ниже приведена схема замены реальных пользователей их программными моделями — виртуальными помощниками.

 

 

Система будет функционировать как некоторый автономный закрытый ящик. Он будет выводиться из равновесия снаружи клиентами, или игра запуститься когда клиент попросит что-то продать. Меняя условия покупки-продажи, мы сможем изменять цепочки внутри коробки. А фактически наши боты будут динамически менять свое поведение подстраиваясь под текущую ситуацию.

 

 

Давайте рассмотрим что из себя представляет этот самый "бот", об этом ниже ...

 

Упрощенная модель бота-сотрудника

 

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

 

 


Давайте рассмотрим как она работает более детально:

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

Иными словами наш "пользователь" движемся по кругу словно белка в колесе.

 

 

Картинку схему процесса выше можно перерисовать некоторой схемой подобием конечных автоматов или машины состояний - она приведена ниже.

 

 

Тут происходит все тоже самое, только в терминах операций, связей и событий:

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

Такой режим работы можно спроецировать на знакомую всем вещь как проверка почты или наличия сообщений на телефоне. Вы ведь время от времени проверяете наличие новых сообщений, не так ли? Если они появляются, то мы их просматриваем, отвечаем. И так в течении дня) Ниже приведен рисунок описывающий используемых ботов и настройки выполнения их.

 

 

Давайте плавно перейдем к интерфейсу, который позволяет нам выполнять работу в бизнес приложении 1С.

 

Интерфейсные доски для пользователей или АРМы

 

В качестве рабочих мест пользователя можно выделить три варианта — это:

  • динамические списки с отборами,
  • специальные обработки (мы их называем автоматизированные рабочие места (АРМ))
  • произвольная обработка написанная вручную под текущую задачу.

Первые две существуют из коробки, но могут затруднять или усложнять алгоритм сценария работы бота. Последний вариант может быть самым оптимальным, но требует непосредственной разработки. А наиболее удобное для выполнения задач работы считается встроенное в конфигурацию специализированное рабочее место, т.к. оно предназначено именно для выполнения основных операций. Для динамических списков в большинстве своем требуется добавлять специальные отборы прежде чем начать фактическую работу, т. е. Выполнять их некоторую специализацию. Третий вариант — создать свою обработку для выполнения поставленной задачи, мы его рассматривать в текущей статье не будем.

Пример рабочего места пользователя «Менеджер» приведен на рисунке ниже. Это обычный динамический список «Заказы клиентов». Как мы видим в нем есть возможность управлять состоянием отображаемых данных через готовые фильтры - «текущее состояние», «менеджер».

Фильтрацию данных требуемым нам отборам - по организациям, складам можно выполнить двумя способами:

  • использовать наличие ограничения по RLS «Организации» и/или «Склады». В этом случае фильтрация будет выполняться автоматически на уровне платформы и настроек ограничения доступа;
  • добавить дополнительные отборы по полям «Организация», «Контрагент», «Склад».

 

 

Второй АРМ — это рабочее место сотрудника склада «Управление отгрузкой» или «Управление поступлением». Функциональность и представление логически у них похожие, поэтому остановимся на первом. 

Для конфигурации ERP из коробки у нас с Вами сразу есть отбор по складу. С точки зрения ограничения по аналитики «Организация» и «Партнер» не требуется, т. к. сотрудник должен принимать товары с любой организации и партнера. Но если вдруг это потребуется, то вы можете воспользоваться настройкой системы ограничения доступа.

 

 

Вы справедливо можете задать вопрос: «Как выполнять выбор распоряжения для обработки?» Вариантов множество:

  • передавать или получать откуда то номер распоряжения. Такой фокус мы применяем, когда выполняем обычный сценарный тест - последовательность действий в рамках одного сценария.
  • брать первый по списку или последний. Этот вариант мы выбрали в текущей используемой нами реализации.
  • добавить "записную книжку" - регистр сведений обработанных объектов и писать в него обработанные или с ошибкой и исходя из его состояния корректировать выбор распоряжения для обработки.
  • другие варианты.

Рассмотрим как запускаются сценарии, что стоит за блок схемами...

 

Сценарии обработки событий

 

Как было описано выше — поведение ботов состоит из набора действий, которые в зависимости от текущего состояния системы могут меняться подстраиваясь под конкретную ситуацию, т.е. имеют динамическую структуру. Рассмотрим поведение для примера работы бота имитирующего сотрудника склада:

  • Как только система выполнит переход в состояние «Проверка», автоматически будет запущен в работу скрипт «проверка наличия распоряжения» (см. рис. ниже). Этот скрипт взведет переменную «Наличие распоряжений» в одно из двух состояний - Истина или Ложь.
  • Далее по результатам выполнения этого скрипта и анализу переменной «Наличие распоряжений» будет возможен переход в одно из возможных состояний - ожидание или выполнение создания расходного ордера.
  • При переходе в состояние «Создать расходный ордер» будет запущен соответствующий скрипт.
  • И т.д. в зависимости от сложности скрипта описания поведения бота «Кладовщик»

 

 

Вы можете задать резонный вопрос: «А что если ситуация выйдет из под контроля? Упадет приложение 1С или выползет ошибка кода? Как ваш виртуальный бот будет реагировать? Зависнет?». В данном случае мы предлагаем запускать отдельную петлю/процесс/«сознание», которое будет в отдельном потоке обрабатывать ошибочные ситуации. Это позволит значительно упростить текущую структуру скрипта и вносить определенную независимость в работу всей системы.

 

 

 

Развитие инструмента управления игрой

 

Изначально, когда мы остановились на схеме организации поведения виртуальных помощников — конечные автоматы, то АРМ выглядел следующим образом:

 

 

Модель отлично работала, но у нее был существенный недостаток. Запуск довольно больших скриптов уменьшает вариативность системы и делает ее более неустойчивой. Но при увеличении количества состояний и учета связей между ними мы сталкиваемся с проблемой серьезного роста сложности. Тут не помогает даже использование иерархических конечных автоматов.

 

 

Следующим шагом мы ввели большую свободу управления и изменили алгоритм управления. Сделали подобие логической системы с обширной базой знаний. Знания наполнили из разработанных ранее сценариев - около 80 сценариев бизнес-процессов и 400 скриптов в библиотеке действий, конечно не все из них подходят и требуют переработки, но это поправимо и требует времени. К сожалению, столкнулись с проблемой использования 1C Automation API в нагрузочном тестировании, но об этом в следующей статье. 

В итоге мы также переработали структуру управления процессом тестирования. Создали отдельный блок генерации создания и управления запуском ботов.

 

 

Для взаимодействия, передачи команд и общения между всеми участниками процесса мы реализовали чат с комнатами и другим нужным функционалом:

 

 

 

Масштабирование

 

Данный механизм легко масштабируемый. Основными параметрами масштабирования могут быть:

  • Организации
  • Партнеры
  • Склады
  • Номенклатура
  • Менеджеры

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

 

 

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

С точки зрения менеджеров, то мы можем использовать ограничения по двум аналитикам - организация и склад. Таким образом мы легко сможем увеличить количество ботов комбинируя склады и организации - N складов*M организаций. К примеру, при наличии 10 складов и 4 организаций мы получим - 40 ботов и т.д. Учитывайте, что количество ботов с количеством реальных пользователей для стандартных инсталляций примерно связано отношением: Количество ботов/0.05~ Количество реальных пользователи онлайн. Почему это так, мы уже приводили ранее, но также рассмотрим в следующей статье про нагрузочное тестирование.

 

 

 

Как запустить игру?

 

Как вы догадались, то выполнение и переигровка сценариев будет формироваться динамически. Давайте рассмотрим чуть подробнее. У нас с вами есть набор аналитик в рамках, которых мы будем запускать систему:

  • Представим склад некоторым вектором или массивом значений:
    • Склад={«Центр», «Юг», «Сервер», «Розничный» и т.д.};
  • Номенклатуру вектором или массивом значений: 
    • Номенклатура={«лимонад», «ботинки»+«42 размер», «вентилятор» и т.д.};
  • Клиентов: 
    • Клиент={«Алхимов», «Частное лицо» и т.д.}

Теперь мы можем представить входную матрицу или таблицу, предварительно запустив генератор комбинаций, следующим образом:

 

 

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

 

 

Данный алгоритм идеально подходит под идею нагрузочного тестирования и об этом как раз поговорим  в следующей статье.

 

P.S. Демонстрация взаимодействия бота и владельца игры в процессе тестирования.

 

 

Еще пара интересных статей про сценарное тестирование от автора:

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

Оставьте свое сообщение

См. также

Тестер: частые вопросы Промо

Тестирование QA v8 Бесплатно (free)

Ошибкам бой - тесты норма жизни!

25.07.2018    32644    grumagargler    31    

Workaround me в 1С/MS SQL и не только, системный подход к созданию костылей

HighLoad оптимизация Администрирование СУБД v8 Бесплатно (free)

Workaround свидетельствует о невозможности решить проблему "правильным путем" и вызывает чувство стыда. Но практика показывает, что способность решать проблемы через workaround является порой единственным способом решить проблему в разумное время. А победителей, как говорят, не судят, так почему бы не создавать workaround по системе?

15.08.2022    358    1CUnlimited    0    

Ускорим проведение в 1С:Управление холдингом

HighLoad оптимизация Запросы v8 УХ Бесплатно (free)

В 1С:Управление холдингом есть "нехороший" запрос, который съедает значительную часть времени проведения документов. Если его подправить, то проведение заметно ускорится.

10.08.2022    3198    sapervodichka    41    

Миссия невыполнима. Общие реквизиты разделители против временных таблиц

HighLoad оптимизация Механизмы платформы 1С v8 1cv8.cf Бесплатно (free)

Механизм общих реквизитов разделителей создает излишнюю\негативную нагрузку на структуру базы данных, но еще больше проблем доставляет при использовании временных таблиц.

05.08.2022    821    1CUnlimited    0    

Долго открывается конфигуратор Промо

HighLoad оптимизация v8 1cv8.cf Бесплатно (free)

В ОС Windows Server 2012 бывает полезно выключать службу Dynamic Fair Share Scheduling (DFSS позволяет балансировать и распределять ресурсы между пользователями), чтобы повысить производительность 1С:Предприятие 8 в ряде случаев.

22.04.2015    45936    Gilev.Vyacheslav    1    

Методика похудения для 1С – 100%

Свертка базы HighLoad оптимизация v8 1cv8.cf Бесплатно (free)

Удаление архивных данных из базы - это непростая задача как для 1С, так и для любой базы данных. В статье изложены различные способы решения задачи, включая самый эффективный для 1С.

28.07.2022    3388    1CUnlimited    37    

Экспертный взгляд на оптимизацию производительности на примере исправления и декомпозиции запроса

HighLoad оптимизация Технологический журнал Мониторинг Запросы v8 ERP2 УТ11 КА2 Бесплатно (free)

Еще один интересный пример оптимизации производительности ERP. Описываем решение проблемы подробно по шагам.

20.07.2022    2808    ivanov660    17    

Экспертный кейс. История расследования одного небыстрого закрытия месяца в 1C:ERP. Пример неочевидных путей расследования в виде детективной истории

HighLoad оптимизация Механизмы платформы 1С Запросы v8 ERP2 Бесплатно (free)

В данной статье хотим рассказать об одном нашем непростом расследовании, в котором удалось собрать сразу несколько проблем на разных уровнях инфраструктуры заказчика и изначальной методологии ведения учета. Само расследование в какой-то момент стало напоминать детективную историю, с роялями в кустах, ошибками платформы, странным поведением пользователей и магическим поведением хорошо знакомых механизмов. Но мы реалисты, поэтому все проблемы были выявлены и устранены ;)

11.07.2022    3936    it-expertise    27    

Видеодемонстрация применения Теста-центра для нагрузочного тестирования конфигураций Промо

HighLoad оптимизация v8 1cv8.cf Бесплатно (free)

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

16.09.2012    36983    Aleksey.Bochkov    29    

Интерактивная справка и помощник первого запуска Vanessa Automation

Тестирование QA v8 Бесплатно (free)

Недавно у нас появился помощник первого запуска и интерактивная справка

21.06.2022    1644    fenixnow    0    

Производительный режим работы RLS

HighLoad оптимизация Роли и права v8 8.3.14 8.3.6 8.3.8 ERP2 БП3.0 КА2 Бесплатно (free)

Функционал подсистемы УправлениеДоступом позволяет работать с RLS в двух режимах: стандартном и производительном. Каждый из режимов имеет свои преимущества и недостатки относительно другого. Основные из них будут рассмотрены в данном материале.

14.06.2022    2833    Neti    6    

Любовь. Быстродействие. 1С

HighLoad оптимизация v8 Бесплатно (free)

Несколько эпизодов на общую тему, собранные за последние полгода. Первый вариант, будет исправляться и дополняться.

26.05.2022    2875    vasilev2015    20    

Как можно "положить" SQL сервер с помощью обычной консоли запросов 1С Промо

HighLoad оптимизация v8 1cv8.cf Бесплатно (free)

Описано как из 1С, с помощью безобидной на первый взгляд обработки, можно сделать неработоспособным SQL сервер. Предложены меры, позволяющие избежать этого.

22.01.2014    70694    yuraos    112    

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

HighLoad оптимизация Администрирование СУБД v8 8.3.14 ERP2 Россия Бесплатно (free)

Пост будет больше интересен руководителям отделов ИТ сопровождения или проектным менеджерам, перед которыми будет стоять задача решения проблемы деградации производительности баз данных 1С. Пост для тех, кому эта тема нова, нет особого опыта, и с ходу непонятно, с чего начать.

24.05.2022    2999    avolsed    15    

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

HighLoad оптимизация v8 ERP2 УТ11 КА2 Бесплатно (free)

Злободневные примеры поиска и исправления проблемных мест в конфигурациях ERP/УТ/КА на СУБД Postgres.

23.05.2022    3250    ivanov660    25    

Заметки эксперта. Расследование длительного выполнения отчета “Движение ТМЦ и затрат в производстве” (1С:ERP 2)

HighLoad оптимизация v8 ERP2 Бесплатно (free)

Кратко: в ходе проведения нагрузочного тестирования “1С:ERP 2” под ОС Linux на СУБД Postgres выявлено существенное замедление формирования отчета “Движение ТМЦ и затрат в производстве” - до 60 минут. После проведенного расследования и точечной корректировки СКД в отчете, без изменения бизнес-логики результатов его работы, работа отчета была ускорена в 80 раз - средний показатель формирования составил 30 секунд.

19.05.2022    1606    it-expertise    19    

Ускоряем списание партий УПП 1.2 / 1.3 / УТ 10.3 Промо

HighLoad оптимизация v8 УТ10 УПП1 Бесплатно (free)

Не секрет, что многие пользователи, использующие партионный учет (а таких очень много, даже среди огромных холдингов, несмотря на пропаганду РАУЗ) при больших нагрузках сталкиваются с резким замедлением списания партий.

21.06.2013    60174    Антон Ширяев    117    

Как начать писать тесты без регистрации и СМС

Тестирование QA v8 Бесплатно (free)

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

11.05.2022    1006    zeltyr    3    

Несколько слов про платформенный механизм оптимизации RLS

HighLoad оптимизация v8 Бесплатно (free)

Смотрим, как работает платформенный механизм оптимизации RLS, сравним поведение на разных СУБД MS SQL, Postgres 11,13,14.

07.04.2022    2938    ivanov660    21    

Почему после обновления Бухгалтерии в марте 2022 года отчеты стали такими медленными

HighLoad оптимизация v8 v8::БУ БП3.0 БУ Бесплатно (free)

Статья раскрывает причину, почему время формирования отчетов после обновления Бухгалтерии в марте 2022 сильно увеличилось. И рассказывает, как можно исправить ситуацию.

05.04.2022    3712    DBOdin_Lab    30    

Сравнение скорости работы 1C+MSSQL и файлового варианта Промо

HighLoad оптимизация v8 1cv8.cf Россия Бесплатно (free)

На форумах постоянно задается один и тот же вопрос: почему 1C+MSSQL медленнее обрабатывает запросы чем файловая? Затем обычно идет «флуд» на несколько десятков страниц. Есть два популярных «течения» в таких форумах — одни говорят что для клиент-серверного варианта это нормально, файловый вариант всегда должен работать быстрее, другие говорят что 1С плохо работает с субд. В результате «баталий и выяснения отношений» на форумах люди расходятся при своих мнения.

19.02.2013    62414    Gilev.Vyacheslav    46    

Экспертный кейс. Расследование фатального замедления времени расчета себестоимости в 1С:ERP 2

HighLoad оптимизация Механизмы типовых конфигураций Запросы v8 ERP2 Бесплатно (free)

При выполнении нагрузочного тестирования информационной системы на базе 1С:ERP для одного из клиентов с целью оценки возможности миграции системы на PostgreSQL и Astra Linux мы столкнулись с неприемлемым увеличением времени выполнения расчета себестоимости. Строго говоря, сценарий тестирования закрытия месяца не был выполнен вообще – он не укладывался в таймаут выполнения теста, 24 часа. По прошествии 18 часов всё ещё шло выполнение операции «Распределение затрат и расчет себестоимости». Более 16 часов выполнялся подэтап “Расчет партий и себестоимости. Этап. Расчет себестоимости: РассчитатьСтоимость”. Всё это время выполнялся запрос, который в текущей инфраструктуре клиента (СУБД MS SQL Server) выполняется чуть более 3 минут на аналогичных данных.

25.03.2022    3892    it-expertise    92    

Экспертный кейс. Расследование деградации производительности системы. Проведение документа “Поступление товаров и услуг” (1С:ERP 2)

Механизмы платформы 1С Запросы HighLoad оптимизация v8 ERP2 Бесплатно (free)

В ходе проведения нагрузочного тестирования одним из наших клиентов была выявлена сильная деградация производительности системы в целом и, в частности, выполнения ключевой операции “Проведение документа поступление товаров и услуг” в течение выполнения теста. Согласно данным подсистемы БСП “Оценка производительности”, время выполнения ключевой операции “Проведение документа поступление товаров и услуг” возрастало в процессе тестирования с 15-20 секунд в начале тестирования до 150-200 секунд в его финале.

02.03.2022    3210    it-expertise    47    

Пример пошагового решения проблемы производительности на базе Postgres SQL с картинками

HighLoad оптимизация Технологический журнал v8 Бесплатно (free)

Рассмотрим по шагам процесс обнаружения, анализа и решения проблемы производительности на примере базы ERP, сравним отличия в работе Postgres и MS SQL.

28.02.2022    8613    ivanov660    18    

Параллельные вычисления в 1С 8 Промо

HighLoad оптимизация v8 1cv8.cf Бесплатно (free)

Решение позволяет ускорять выполнение запросов в 1С 8 в отчетах путем их параллельного выполнения в разных потоках.

11.02.2013    38693    gallam99    19    

Ускорение работы конфигуратора 1С с большими прикладными решениями

HighLoad оптимизация v8 Бесплатно (free)

Ускорение работы 1С конфигуратора с большими прикладными решениями путем размещения системных каталогов 1С на RAM диске.

13.01.2022    5993    stg2005    105    

Ошибка производительности при проведении этапа 2.2 в ERP 2.4 и ERP 2.5

HighLoad оптимизация v8 ERP2 Россия Бесплатно (free)

Хочется поделиться одним подводным камнем, с которым могут встретиться другие пользователи ERP. Искал решение в интернете, но ничего похожего не нашел. Поэтому решил создать эту тему.

06.12.2021    1322    Rokky78    6    

Повышение производительности веб-сервисов. Переиспользование сеансов

WEB HighLoad оптимизация v8 Бесплатно (free)

Повышение производительности веб-сервисов. Переиспользование сеансов. Практическая реализация.

20.10.2021    3314    sorter1    2    

Ubuntu vs CentOS vs Win2k8 vs Debian: производительность PostgreSQL Промо

Статистика базы данных HighLoad оптимизация v8 Бесплатно (free)

Хотя интернет уже переполнен статьями о "правильной" настройке связки PostgreSQL и 1C 8.2, для подводных камней всегда остается место. При сравнении производительности СУБД PostgreSQL на разных ОС, показатели различаются в разы. Самую большую обиду принесла любимая Ubuntu (человечность). После долгих дней и ночей проведенных за консолью этой ОС, она разочаровала окончательно. Тормоза PostgreSQL в Ubuntu Server. Что с ними делать? Сколько раз можно наступать на грабли?

03.11.2012    45856    madmpro    32    

Оптимизация проведения документов списания партий в УПП 1.3

HighLoad оптимизация v8 УТ10 УПП1 Бесплатно (free)

Почти в каждой конфигурации УПП 1.3 (возможно, и в УТ 10.3) есть медленный запрос, тормозящий проведение документа списания. Данная публикация раскрывает места вызова данного запроса и приводит пример оптимизации. Пример показывает результаты проведения документа «Реализация товаров и услуг», но метод работает и для других документов списания партий.

09.09.2021    1065    info1i    5    

Смотрим запросы 1С через Microsoft SQL Profiler по следам ошибок разработчиков, приводящих к проблемам производительности

HighLoad оптимизация Рефакторинг и качество кода Технологический журнал v8 Бесплатно (free)

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

07.09.2021    8659    ivanov660    26    

Адекватный параллелизм в 1С

HighLoad оптимизация v8 Бесплатно (free)

Параллелизм ускоряет выполнение тяжелых регламентных операций на СУБД, но может негативно влиять на работу многопользовательских учетных систем. О том, как анализировать влияние параллелизма и настраивать его для MS SQL и PostgreSQL, рассказал ведущий разработчик компании ООО МКК «Ваш Инвестор» Вадим Фоминых.

13.08.2021    8698    Shmell    7    

Распространенные ошибки разработчиков, приводящие к проблемам производительности

HighLoad оптимизация Рефакторинг и качество кода v8 Бесплатно (free)

Рассмотрим примеры ошибок, анализ, исправление и мероприятия по недопущению подобного в будущем. Всего будет 18 примеров.

02.08.2021    13247    ivanov660    77    

Parameter sniffing и генерация планов для разработчиков 1С

HighLoad оптимизация v8 Бесплатно (free)

Особенности генерации планов запросов. Статья написана по мотивам вебинара Виктора Богачева.

01.06.2021    12261    vasilev2015    17    

Поиск причин блокировок СУБД

HighLoad оптимизация v8 v8::blocking 1cv8.cf Бесплатно (free)

Расследование блокировок СУБД. Статья написана по мотивам вебинара Виктора Богачева.

28.04.2021    7070    vasilev2015    13    

Тонкости эксплуатации, плюшки и особенности Postgres Pro Enterprise

HighLoad оптимизация v8 1cv8.cf Россия Бесплатно (free)

В ходе онлайн-встречи INFOSTART MEETUP Novosibirsk Руководитель ИТ из компании ИнфоСофт Антон Дорошкевич поделился с коллегами тонкостями и опытом работы с Postgresql для 1С. 

22.04.2021    5353    a.doroshkevich    6    

Решение нестандартных проблем производительности на реальных примерах

HighLoad оптимизация v8 Бесплатно (free)

На екатеринбургском Infostart Meetup выступил с докладом архитектор ИС центра разработки ФТО Александр Криулин. Он поделился с коллегами кейсами нестандартных проблем производительности и рассказал о способах их решения.

24.03.2021    6538    AlexKriulin    37    

Соединение вложенными циклами

HighLoad оптимизация v8 Бесплатно (free)

Nested loops и отсутствующие индексы. Статья написана по мотивам вебинара Виктора Богачева.

12.03.2021    4302    vasilev2015    22    

Hello world в Vanessa-ADD bddRunner

Тестирование QA v8 Бесплатно (free)

Минимальный пример на Vanessa-ADD bddRunner без теории. При написании использовались: 1С 8.3.10.2753, Vanessa add 6.6.5.

24.02.2021    1341    kirinalex    0    

Долгое воспроизведение звука по RDP с удаленной машины

HighLoad оптимизация v8 Бесплатно (free)

При воспроизведении короткого звука в 38 Кб, сигнализирующего об успешном сканировании, порою происходило подвисание примерно в 5 секунд.

09.02.2021    1339    pashamak    2    

Анализ блокировок СУБД: таблица изменений плана обмена 1С

HighLoad оптимизация v8 Бесплатно (free)

Практический пример анализа типичной проблемы ожидания на блокировках СУБД, возникающих при использовании планов обмена 1С. Сервер СУБД: Microsoft SQL Server.

18.12.2020    4682    zhichkin    11    

Практика применения DevOps. Тестирование

Тестирование QA v8 1cv8.cf Бесплатно (free)

В третьей части мастер-класса «Практика применения DevOps» на конференции Infostart Event 2019 Inception выступила Светлана Попова. Она рассмотрела возможности использования двух инструментов тестирования от фирмы «1С» – «Сценарного тестирования» и связки СППР и Vanessa Automation, и рассказала про плюсы и минусы каждого из этих вариантов.

11.12.2020    6530    SvVik    0    

Анализ проблем производительности по динамике мониторинга RAS 1C

HighLoad оптимизация v8 1cv8.cf Бесплатно (free)

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

07.10.2020    6349    ivanov660    13    

Ускорение медленной работы строк в 1С на примере 1С:Документооборот КОРП

HighLoad оптимизация v8 ДО Бесплатно (free)

Если у вас в 1С:Документооборот КОРП 2.1.11.5 (часть более старых и новых конфигураций): 1) Долго отправляется почта в формате HTML; 2) Медленно открывается документы внутренние / входящие / исходящие; 3) Тормозит область просмотра или открытие задач. Тогда вам сюда.

02.10.2020    6234    Iaskeliainen    16    

Тест скорости работы мобильной платформы 1С

Мобильная разработка HighLoad оптимизация v8 1cv8.cf Бесплатно (free)

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

14.09.2020    2431    capitan    25    

Тестирование серверного поведения с Vanessa Automation

Тестирование QA v8 Бесплатно (free)

Обзор модуля "ИнициаторДанных" (версия VA 1.2.034), пример скрипта

14.09.2020    3602    unichkin    18    

Нестандартные блокировки при работе с OLAP-нагрузкой

HighLoad оптимизация v8 Бесплатно (free)

Если выполнение отчета мешает работе других пользователей и провоцирует блокировки, даже с учетом «грязного чтения» – ситуация кажется парадоксальной. О том, как расследовать такие проблемы, на конференции Infostart Event 2019 Inception рассказали ведущий программист торгового дома «Петрович» Станислав Щербаков и специалист по производительности компании «СофтПоинт» Александр Денисов.

20.07.2020    3116    Филин    7    

Vanessa, видеоинструкции для web-клиента

Тестирование QA v8 1cv8.cf Бесплатно (free)

Vanessa-Automation. Использование видеоинструкций в web-клиенте.

01.06.2020    4345    SvVik    3