Сценарное тестирование в помощь программисту 1С

0. Решитко Дмитрий (grumagargler) 166 10.11.16 21:12 Сейчас в теме
Альтернативное решение для организации сценарного тестирования конфигураций, разработанных на управляемых формах

Перейти к публикации

Комментарии
1. Сергей Старых (tormozit) 4282 11.11.16 13:14 Сейчас в теме
2. DenisCh Гейтс (DenisCh) 11.11.16 13:27 Сейчас в теме
Посмотрим на выходных. Погода всё равно шепчет, так будет чем развлечься.
3. борян петров (TODD22) 15 11.11.16 13:32 Сейчас в теме
Нужная разработка. На выходных то же посмотрю..... :)
4. ash (ashvik) 11.11.16 14:53 Сейчас в теме
5. Сергей (Che) Коцюра (CheBurator) 3383 11.11.16 17:55 Сейчас в теме
Остался нераскрытым вопрос кто пишет тесты на тесты.
ибо если мы считаем что тесты пишутся правильно, то что нам мешает считать что правильно пишется программа?
Yakud3a; Zhilyakovdr; +2 2 Ответить 2
6. DenisCh Гейтс (DenisCh) 11.11.16 17:57 Сейчас в теме
(5) Тесты должны писаться так, что их правильность смогла бы понять даже бухгалтерша.
Например, для функции Добавить2К2() правильным тестом будет РезультатФункции = 4
7. Решитко Дмитрий (grumagargler) 166 11.11.16 18:12 Сейчас в теме
(5) CheBurator, раскройте вопрос на практическом примере, так сложно ответить прицельно. Если вы имеете ввиду бизнес логику, то тестирование нужно для того, чтобы проверить ожидаемое поведение с фактическим, а вот насколько это ожидаемое поведение правильное - выходит за область тестера. Также, если во время тестирования возникает банальная ошибка обращения к несуществующему свойству или методу, уже само по себе не требует подтверждения правильности.
8. Сергей (Che) Коцюра (CheBurator) 3383 11.11.16 18:40 Сейчас в теме
(6) это в прастейшем примере. в чуть более широком - получается человек опрпеделяет правильность. протестировать все ветки болееменее непростой программы - вручную весьма затруднительно. соответсвенно - как определять те тесты что надо написаны? или чего-то не хватает?

А чтобы проверить ожидаемое поведение с фактическим - отдатю юзерам. если претензий не поступило = ок, поступило - вот тебе и тесты...
9. Решитко Дмитрий (grumagargler) 166 11.11.16 18:54 Сейчас в теме
(8) CheBurator, пока в голову не приходят идеи, кто кроме человека может определить правильность тестов и их состав. Тестирование очень конкретная вещь и ожидать каких-то эвристических анализаторов всевозможных сценариев с их запуском и проверкой, не стоит, мы не решаем задачу коммивояжера. Есть сценарий – есть тест к нему. Сценарий не покрывает какие-то ситуации? Значит нужен еще один сценарий, который должен покрыть. Если таких сценариев много, начните с одного, это всё равно лучше, чем вообще ничего.
davydoff; +1 Ответить
10. Артур Аюханов (artbear) 867 11.11.16 20:19 Сейчас в теме
Интересно посмотреть очередную работу по тестированию.
Перед разработкой/при разработке изучали ли аналоги по тестированию в 1С ? Штатное сценарное тестирование от 1С, наш xUnitFor1C, еще vanessa-behavior, другие работы?

Было бы интересно увидеть справку в виде отдельного файла (markdown, html и т.п.), удобном для просмотра через браузер
11. Пишу код как картины (yurii_host) 1043 11.11.16 21:07 Сейчас в теме
12. Решитко Дмитрий (grumagargler) 166 11.11.16 21:14 Сейчас в теме
(10) artbear, да, конечно, эти разработки были изучены, именно поэтому родился тестер. Строго говоря, тестеру больше года, просто сейчас решил выложить его, потому что всё чаще стала подыматься тема простых инструментов тестирования. На счет справки, нужно подумать, всё-таки там не один документ, а два (справочники Сценарии и Приложения) и будет больше (под каждый объект метаданных)
13. Решитко Дмитрий (grumagargler) 166 11.11.16 21:21 Сейчас в теме
(10) artbear, я перечитал своё сообщение, и решил дополнить, чтобы не показаться снобом. Тестер был создан не вопреки существующим программам, а по той причине, что он решает немного другие задачи и немного иначе. Я надеюсь, что дополнительный инструмент станет хорошим подспорьем для людей, интересующихся этим вопросом.
FSerg; sorb; +2 Ответить
14. Павел Гладков (G.P.) 3 11.11.16 21:45 Сейчас в теме
Заинтересовало, подпишусь
15. Игорь Пашутин (Alien_job) 114 12.11.16 08:50 Сейчас в теме
Спасибо, очень интересно!
16. Антонио Антонио (Fragster) 677 12.11.16 12:51 Сейчас в теме
Как мне протестировать такой сценарий - один пользователь открывает документ, начинает редактировать, другой пользователь вызывает программную обработку, обработка должна вызвать исключение, если документ редактируется?
17. Евгений Мартыненков (JohnyDeath) 290 12.11.16 16:04 Сейчас в теме
А чем vanessa не устроила?
Там почти все можно мышкой накликать.
18. Решитко Дмитрий (grumagargler) 166 12.11.16 19:08 Сейчас в теме
(16) Fragster, есть несколько возможностей, например, вы можете в коде теста выполнить действия первого пользователя, затем, отключиться от приложения (метод Отключить()), изменить параметры подключения через структуру AppData, затем, запуститьПриложение () с указанием другого порта (см. пример в справке), подключиться и продолжить выполнение сценария. Другой способ, запустить тестер из сценария, с указанием стартующего сценария, который сделает действия второго пользователя. Если у вас не получится - напишите, я попробую накидать код.
19. Решитко Дмитрий (grumagargler) 166 12.11.16 19:22 Сейчас в теме
(17) JohnyDeath, (тут сложно ответить так, чтобы тебя не воспринимали в штыки, всё-таки ванесса продукт, которым пользуются многие, прошу воспринимать ответ только дополнение к общему делу) . Развернуто, я ответил здесь: https://habrahabr.ru/post/307808/
Если вкратце, кроме в разнице подходов, нам не удалось ванессой описать реальные сценарии, в приемлемые для нас сроки. Не получалось и прокликать без ошибок действий 25-30. В конце всех попыток (пробовали не только ванессу) всё свелось к тому, что нам нужен был механизм программного взаимодействия с тестируемым приложением, чтобы удовлетворить наши требования.
keypax; sorb; JohnyDeath; +3 Ответить
20. Роман Сюзев (sorb) 13.11.16 08:32 Сейчас в теме
Отличная вещь, спасибо! У меня тестер очень непринужденно вписался в содружество хЮнит и Ванессы, обеспечив тестирование "без правил" и "по-быстрому" :). По публикации: она получилась больше для тех, кто уже тестирует, поэтому, как мне кажется, была бы полезной еще одна статья для тех, кто пока не совсем в теме: Ваш инструмент, пожалуй, имеет самый низкий порог вхождения на данный момент, и существенно ускоряет сам процесс разработки, а это делает его полезным даже для тех, кто пока не готов тратить время на имплементацию хДД. Для раскрытия этого момента, как мне кажется, нужно описание практического примера, типа добавляем в БП 3.0 основные единицы измерения, а потом ставим обновления, с описанием процесса и вытекающих выгод при последующей поддержке. У самого руки чешутся написать, но понимаю, что просто не смогу сделать это за разумное время. Еще раз хочу поблагодарить за удачный инструмент :)
Kindman1980; Vladimir_Konyrev; tormozit; +3 Ответить 1
21. Роман Сюзев (sorb) 13.11.16 09:51 Сейчас в теме
(8) CheBurator, самый незатратный способ определять, какие тесты нужные - это хотя бы начать закрывать тестом каждую возникшую проблему. Оно конечно реактивно получается, но через некоторое время получается добротный, "правильный" набор тестов. А еще например Вы пишете отчет, время от времени запускаете его и смотрите, что получилось. Так вот если запускать не руками, а накидать запускатор, то и отладка пойдет веселей, и вот он - тест, а значит меньше мучаем бедных кладовщиков и других ни в чем не повинных животных. Лично я за максимально гуманное отношение к кладовщикам и животным :)
22. Роман Сюзев (sorb) 13.11.16 10:17 Сейчас в теме
Все, прочитал статью на хабре - вопрос по отдельной статье для начинающих можно считать полностью раскрытым, спасибо.
23. Решитко Дмитрий (grumagargler) 166 14.11.16 03:01 Сейчас в теме
(20) sorb, спасибо! да, я подумаю на счет небольшой статьи с практическими примерами, хотя конечно тема тестирования у многих ребят уже просто в печенках. И ситуация такая, что вроде все понимают, что надо, а вот когда пытаются - опа, а тут оказывается инвестиция времени нужна такая, что уже вроде не очень то уж и хотелось. Конечно, можно утверждать, что те, кто сдался, недостаточно твердые, чтобы идти до конца, или продавливать тему административно. Но ведь в тоже самое время, можно ведь и допустить, что проблемы и в инструментарии, который нам надо улучшать.
24. Артём Андриянов (CSiER) 14.11.16 06:06 Сейчас в теме
25. Решитко Дмитрий (grumagargler) 166 14.11.16 06:10 Сейчас в теме
(24) CSiER, к сожалению, в таком варианте не будет работать переход из оглавления по ссылкам, желательно справку открывать из тестера :-)
26. Антонио Антонио (Fragster) 677 14.11.16 12:34 Сейчас в теме
а есть кнопка "создать тесты открытия всех форм"? и прочие подобные пакетные кнопки?
27. Антонио Антонио (Fragster) 677 14.11.16 12:43 Сейчас в теме
матрицу критериев успеха/отказа по ролям/пользователям также очень хочется - чтобы проставил галочками где тест должен сработать, а где - отвалиться, и всё.
28. Антонио Антонио (Fragster) 677 14.11.16 12:44 Сейчас в теме
ну и хочется тестов на проверку условного оформления, хотя здесь скорее платформенное ограничение сработает...
29. Сергей Старых (tormozit) 4282 14.11.16 12:46 Сейчас в теме
(26) В описанной автором концепции правильнее будет "вызвать все команды командного интерфейса конфигурации".
30. Решитко Дмитрий (grumagargler) 166 14.11.16 16:14 Сейчас в теме
(26) Fragster, таких тестов в начальной базе нет, всё-таки тестер больше для сценарного тестирования, и тем не менее, их можно создать самостоятельно! если будет возможность, создавайте и выкладывайте на жит для других коллег :-)
31. Михаил Русанов (RainyAugust22) 211 21.12.16 06:56 Сейчас в теме
Интересная тема! Скачал базу, но при запуске ошибка:
Ошибка инициализации модуля: CommonModule.DF.Module
по причине:
{CommonModule.DF.Module(98,10)}: Процедура или функция с указанным именем уже определена (Pick)
Function <<?>>Pick ( val Ref, val Field, val Default = undefined ) export
платформа 8.3.9.1818 исправьте плз или как запускать правильно?
32. Решитко Дмитрий (grumagargler) 166 21.12.16 15:21 Сейчас в теме
День добрый! Уточните пожалуйста, откуда вы скачали базу?
Вот ссылка на актуальный релиз, способный работать под 8.3.9: https://github.com/grumagargler/tester
База, приложенная к теме, тестировалась на версиях <= 8.3.8
33. Владимир Насыров (Spacer) 257 04.04.17 12:08 Сейчас в теме
(32)Чего-то не работает под 8.3.9. 10-ю версию платформы хочет.
34. Решитко Дмитрий (grumagargler) 166 04.04.17 14:21 Сейчас в теме
(33) скачайте пожалуйста с гитхаба последнюю версию, там эта проблема решена.
35. kiruha Дронов (kiruha) 359 11.05.17 19:09 Сейчас в теме
Для Бух 3.0 есть или планируются тесты ?
36. Решитко Дмитрий (grumagargler) 166 11.05.17 23:26 Сейчас в теме
(35)
Для Бух 3.0 есть или планируются тесты ?

мне не приходится вплотную работать с этой конфигурацией, поэтому с моей стороны - ответ нет.
Возможно, другие коллеги уже имеют какие-то наработки, и поделятся, ведь технически всё для этого есть.
37. kiruha Дронов (kiruha) 359 12.05.17 12:43 Сейчас в теме
(34) скачал последнюю - 1.3.2.15 cf - обновлено 8 часов назад -
для работы с конфигурацией необходима версии платформы не меньше, чем 8.10. Текущая версия 8.3.9...

не могу даже режим совместимости выставить
38. Решитко Дмитрий (grumagargler) 166 12.05.17 14:53 Сейчас в теме
(37)
не могу даже режим совместимости выставить

у вас нет под рукой 8.3.10, или какая-то другая проблема?
39. kiruha Дронов (kiruha) 359 12.05.17 15:13 Сейчас в теме
(38)Нет под рукой 8.3.10. Думаю у большинства пока 8.3.9 - иначе не стал бы беспокоить
40. Решитко Дмитрий (grumagargler) 166 12.05.17 15:55 Сейчас в теме
41. kiruha Дронов (kiruha) 359 12.05.17 16:26 Сейчас в теме
42. Решитко Дмитрий (grumagargler) 166 12.05.17 16:34 Сейчас в теме
приходите в специальный чат https://gitter.im/tester1c/Lobby, там вам другие коллеги смогут более оперативно помогать
43. Роман Сюзев (sorb) 12.05.17 16:53 Сейчас в теме
(39) влезу: 8.3.10 по опыту работы с ней чудо как хороша, пожалуй самая стабильная и безбажная с момента появления 8.3. Перебирайтесь, не пожалеете :)
Оставьте свое сообщение