Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Mar 26 23:42

    grumagargler on master

    Update README.md (compare)

  • Mar 01 15:04
    grumagargler commented #20
  • Feb 12 12:39
    JohnyDeath opened #20
  • Feb 09 03:42

    grumagargler on master

    Обновление 1.3.5.14 1. Оптимиз… (compare)

  • Feb 07 16:33

    grumagargler on master

    Обновление 1.3.5.13 1. Откорре… (compare)

  • Feb 05 16:34

    grumagargler on master

    Обновление 1.3.5.12 Перепакова… (compare)

  • Jan 29 14:16

    grumagargler on master

    Update README.md (compare)

  • Jan 29 14:15

    grumagargler on master

    Delete ПереходНа1.3.3.9.epf (compare)

  • Jan 29 14:14

    grumagargler on master

    Обновление 1.3.5.11 - добавлен… (compare)

  • Jan 29 14:12

    grumagargler on master

    Удаление старых версий (compare)

  • Jan 29 14:12

    grumagargler on master

    Удаление старых версий (compare)

  • Jan 29 14:12

    grumagargler on master

    Delete 1Cv8.3.11.cf (compare)

  • Jan 29 14:12

    grumagargler on master

    Удаление старых версий (compare)

  • Jun 02 2020 14:29

    grumagargler on master

    Обновление 1.3.5.9 - Учтена мн… (compare)

  • Jun 01 2020 19:16

    grumagargler on master

    Обновление 1.3.5.8 - Улучшено … (compare)

  • May 31 2020 20:04

    grumagargler on master

    Обновление 1.3.5.7 Незначитель… (compare)

  • May 31 2020 03:49

    grumagargler on master

    Обновление 1.3.5.6 - Добавлен … (compare)

  • Mar 18 2020 12:56

    grumagargler on master

    Обновление 1.3.5.5 1. Незначит… (compare)

  • Feb 25 2020 02:30

    grumagargler on master

    Обновление 1.3.5.4 - Существен… (compare)

  • Feb 03 2020 03:24

    grumagargler on master

    Delete 1Cv8.3.14.cf (compare)

Andrey S
@Andrey_AS_gitlab
@grumagargler, не совсем понял, что вы имели в виду под тегами. Было бы удобно, если после открытия списка ошибок по заданию можно бы было отметить вручную категорию каждой ошибки и выполнить сортировку.
grumagargler
@grumagargler

Можно ли как-то определить, что на экране есть шторка?

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

grumagargler
@grumagargler
@Andrey_AS_gitlab примерно так вот можно, не знаю насколько вам это подойдет правда
Peek 2021-06-02 10-45.gif
Andrey S
@Andrey_AS_gitlab
@grumagargler в этом случае получается, что теги указываются не для конкретной ошибки из журнала ошибок, а для сценария. К сожалению, это не очень подходит
MikolaKar
@MikolaKar
Добрый день! Не запускаются тесты на Виртуальной машине. При каждом старте Тестера выдает сообщение, что Внешняя компонента успешно установлена. Установил перед этим платформу 8.3.18.1334. При запуске любого теста выдает сообщение, что произошла непредвиденная ошибка, с предложением отправить отчет. При запуске с открытым конфигуратором с опцией Останавливаться по ошибке при запуске теста вываливается на такое сообщение:
Тип не определен (AddIn.Extender.Regex)
{CommonModule.Libraries.Module(9)}: lib = new ( id );
{CommonModule.Regexp.Module(12)}: exp = Libraries.Init ( "Regex" );
{CommonModule.Lexer.Module(49)}: if ( Regexp.Test ( NormalRow, pattern ) ) then
{DataProcessor.Compiler.ObjectModule(328)}: end = Lexer.DeclarationEnds(ProcedureEnds, CurrentRow);
{DataProcessor.Compiler.ObjectModule(306)}: extractProcedures(Scope, SyntaxOnly);
{DataProcessor.Compiler.ObjectModule(28)}: compileProcedures(Program, false);
{CommonModule.Compiler.Module(8)}: return processor.Compile ();
{CommonModule.Runtime.Module(165)}: result = Compiler.Build(scenario, ProgramCode);
{CommonModule.Test.Module(8)}: Runtime.Exec ( program, ProgramCode, true, Debugging, Offset, Filming, , Params );
{CommonModule.RunScenarios.Module(30)}: Test.Exec ( SessionScenario, , , Debugging );
{CommonModule.RunScenarios.Module(11)}: runScenario ( Debugging );
{Catalog.Scenarios.Command.Run.CommandModule(5)}: RunScenarios.Go ( Scenario, false );
grumagargler
@grumagargler
день добрый, а на вм вы пробовали установить последниее с++ библиотеки? (см. https://github.com/grumagargler/tester, ссылки внизу)
MikolaKar
@MikolaKar
Установка библиотеки помогла. Спасибо!
Andrey S
@Andrey_AS_gitlab
@grumagargler возможно ли внести изменения в Тестер, которые бы позволили применять классификацию, как я описал ранее? Так как при прогоне возникают различные ошибки: одни вызваны работой тестируемого приложения и непосредственно являются ошибками, другие связаны с самими автотестами (некорректные проверки, приводящие к ложным срабатываниям), третьи обусловлены проблемами в работе тестируемой базы. Было бы очень удобно, если бы появились инструменты, с помощью которых можно проанализировать результаты запуска и затем, например, построить график для сравнения с предыдущими прогонами.
MikolaKar
@MikolaKar
Если говорить о развитии функционала Тестера, то мне, например, хотелось бы иметь возможность отбирать из предыдущих запусков только те сценарии, которые завершились с ошибками, возможно с учетом классификации, предлагаемой Andrey S
@Andrey_AS_gitlab, и помещать их автоматом в список для запуска в задании. Дело в том, что когда выполняется запуск всех тестов, есть один и тот же код, который выполняется в разных сценариях. Хотелось бы, поменяв код в одном месте, запустить сразу все сценарии, которые были с ошибками в предыдущем каком-то тестировании. Другой вариант, это когда в одном тесте появляется проблема, которая не дает возможности выполниться другим тестам. Например, появление шторки со списком команд, пропадание соединения с тестовой базой и т.д.
grumagargler
@grumagargler
@Andrey_AS_gitlab Помогите пожалуйста проникнуться проблемой, к сожалению я не всегда схватываю даже казалось бы очевидные вещи. Подскажите, правильно ли я понимаю процесс: есть допустим 300 тестов, мы их прогнали и получили 50 падений. Вы бы хотели, открыть список ошибок (не тестов) по заданию, которое выполнило эти 300 тестов, пройтись по каждой из 50 проблем и отметить каждую неким признаком. Затем, вы бы используя этот же список, хотели бы иметь возможность отбора по признаку. Сама механика понятна, но я не улавливаю процесс до конца, что должно происходить дальше и какой цели служит.
grumagargler
@grumagargler
Давайте я приведу пример из своей практики, может мы найдем точку разрыва. Время показывает, что кол-во тестов только увеличивается. У меня на одном из проектов пополнение базы тестов идет темпом ~5 тестов день. После некоторого порогово кол-ва тестов (допустим 700), становится очень важна скорость их прохождения, поэтому мы выполняем не одно задание, а больше сотни (одновременно тестировать могут до 50 виртуальных машин). В этом случае, журнал заданий уже не очень бы подошел для классификации ошибок (ведь заданий в журнале сотни на один тестовый прогон). Далее, за счет распараллеливания процесса, мне удается запускать полное тестирование по нескольку раз в день (грубо говоря, после каждой фиксации изменений). Когда тестов и заданий много и интенсивность запусков высокая (а к этому стремится каждая команда), ведь процесс сводится к тому, чтобы ошибок небыло вообще. Если ошибки есть - это показатель того, что именно нужно здесь и сейчас исправить, что бы ошибки небыло. В таком процессе, единственной полезной аналитикой становится только кол-во падений, и то не всегда, потому что когда тестов и запусков много (а их будет много, ведь в этом и суть непрерывности и интеграции тестирования в разработку), классификация выглядит утомительным занятием, ведь если у меня три запуска в день, мне получается придется классификацию проводить 3 раза (ведь классификация идет ошибок, а не тестов). Но это лишь одно мнение, поделитесь своими соображениями.
MikolaKar
@MikolaKar
Мне кажется, что классификация результатов выполнения/падения тестов ради самой классификации или что бы строить какие-то графики по анализу падений, - это надо иметь много свободного времени, что бы этим заниматься. Тут времени на написание собственно теста не всегда находится... Сформулирую свое видение еще раз. После массового прогона тестов, у меня их сейчас 175 полное время тестирование занимает 3,5ч., вываливается например 50 тестов. Просмотрев отчет вижу однотипные ошибки в сценариях. Исправил их, и теперь хотелось бы запустить только те тесты, которые в прошлом запуске были с ошибками, т.е. 50. Из них часть прошла бы успешно, часть нет. проанализировав оставшиеся ошибки, делаем изменения и снова запускает только те, что были с ошибками. После того, как таким образом разберемся с ошибками, можно будет опять запустить все тесты для проверки.
MikolaKar
@MikolaKar
Если в задании добавить кнопку подбор, в котором можно было бы выбрать какое-то задание и по этому заданию получить все тесты с ошибками и поставить их в очередь на выполнение
grumagargler
@grumagargler

@MikolaKar > Исправил их

подскажите пожалуйста, а что фактически входит в это действие?

когда вы исправляете тест, вы разве его не запускаете, чтобы проверить, прошел он или нет? Зачем запускать его еще раз отдельно в группе падших? Групповое тестирование больше имеет смысл или все или ничего, все локальные тесты вы и так прогоняете.
тут ведь еще момент, что задания, отличающиеся кол-вом прогнанных тестов будет неблаготворно влиять на отчетность (в текущей реализации)
MikolaKar
@MikolaKar
Все зависит от причины падения теста. Например. При переходе на 18 платформу в диалоговых окнах типа записать? Да, нет? поменялись названия кнопок. У меня в нескольких тестах вызывается метод создание и запись Корреспондента. Ошибка только в этом методе. Я ее исправил. Теперь получается, что я должен проверить каждый тест, в котором вызывался этот метод. Т.е. из большого списка тестов с падениями надо отобрать такие. Ну или запустить все тесты еще раз и ждать результата опять 3,5ч.
Может быть не в одно задание запихать все тесты, а сделать столько заданий сколько было падений в каждом запускать по одному - это не принципиально
grumagargler
@grumagargler
@MikolaKar а в этом случае, помогла бы такая функция: открываем журнал ошибок по заданию, выбираем нужные тесты (с использованием фильтров/поисков) и по правому клику - даем возможность сформировать новое задание по этим ошибкам?
MikolaKar
@MikolaKar
Бывает, что тесты выявляют ошибку в коде 1С. (Ради этого Тестер и запускаем...). Опять же, поправив конфигурацию, было бы неплохо запустить только павшие тесты, что бы проверить их на возможность других ошибок
помогла бы такая функция: открываем журнал ошибок по заданию, выбираем нужные тесты (с использованием фильтров/поисков) и по правому клику - даем возможность сформировать новое задание по этим ошибкам?
если фильтром можно будет отобрать задания с ошибками или по части строки наименования теста - то, мне кажется, что это было бы здорово!
grumagargler
@grumagargler
а как вы отбираете ошибки сейчас, поиском по тексту сценария или ошибки?
в вашем примере выше, ведь достаточно открыть список сценариев и отобрать их по вхождению типа Вызвать ( "СоздатьКонтрагента" )
ведь вы заранее знаете. что все они упали из-за смены платформы
MikolaKar
@MikolaKar
Я в VSCode делаю замены.
Сейчас ошибки выбираю из отчета Тестирование. Еще при запуске всех тестов у меня выводятся сообщения с их очередностью запуска, там же и ошибки. Из такого списка сообщений можно найти первый тест, в котором например появилась шторка с командами и после которого все остальные тесты просто упали по этой причине... Понятно, что сначала разбираемся с первым таким тестом, потом меняю строку везде, где она встречается (обычно это Меню () на Коммандос()) и запускаю тесты еще раз
MikolaKar
@MikolaKar
Я думаю, что надо иметь возможность отбирать сценарии для запуска как по журналу ошибок (павшие или по строке вхождения в наименование), так и по списку сценариев по строке вхождения. Это облегчио бы работу, когда видоизменяем какой-нибудь документ, а с ним связано несколько тестов. Можно было бы запустить сразу все тесты для проверки данного документа.
grumagargler
@grumagargler
@MikolaKar @Andrey_AS_gitlab В качестве продолжения вопроса о классификации ошибок, пока ручная классификация у нас в обсуждении, есть кое-что, что можно предложить сейчас. В тестере есть полуавтоматическая классификация ошибок, основанная на области падения.
image.png
в журнале будет отображен так:
image.png
также допустимо так:
image.png
в журнале будет отображен так:
image.png
в журнале предусмотрен фильтр:
image.png
grumagargler
@grumagargler
если ни область ни комментарий с ! не задан, областью будет считаться имя процедуры/функции
(этой информации пока нет в документации)
в последней версии тестера в разработке (https://github.com/grumagargler/tester.edt) также есть возможность отбора только тех ошибок, которые образовались из-за ошибок в коде тестируемого приложения

@MikolaKar > Я думаю, что надо иметь возможность отбирать сценарии для запуска как по журналу ошибок

согласен

MikolaKar
@MikolaKar
Такой вопрос: можно ли проверить статус формы в целом? Ситуация такая, что форма в целом только чтение = истина, а отдельные реквизиты Проверить статус выдают доступность = истина, хотя реально реквизиты недоступны...
grumagargler
@grumagargler
@MikolaKar к сожалению надежного способа нет
MikolaKar
@MikolaKar
понятно, буду придумывать как выкрутиться
Еще есть замечание или ошибка
Если в строке НайтиСообщение() есть несколько звездочек, то сообщение не находится. Если одна, то все ок. Т.е. у меня есть начальное слово, слово в середине строки и слово в конце. Между ними звездочки, т.к. может быть разный текст.
grumagargler
@grumagargler
попробуйте вместо зведочек использовать .+
MikolaKar
@MikolaKar
Попробовал. Такой вариант работает. Спасибо!
grumagargler
@grumagargler
спасибо, буду наверное звезду интерпретировать как .+