Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Добавление дымового теста на проверку макетов СКД #375

Merged
merged 3 commits into from Dec 19, 2018

Conversation

dvakor
Copy link
Contributor

@dvakor dvakor commented Dec 13, 2018

реализация #374

сделанные изменения

Новый дымовой тест

@silverbulleters/Collaborators - просьба прокомментировать и проверить

@artbear artbear added the smoke label Dec 13, 2018
@artbear artbear added this to the next milestone Dec 13, 2018

Менеджер = Неопределено;

Если ИмяМенеджера = "ПЛАНОБМЕНА" Тогда
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Вот я бы сделал простую структуру
Менеджеры.Вставить("СПРАВОЧНИК", Справочники);
А потом бы просто искал по ключу :)
Возврат Менеджеры[ВРЕГ(ИмяМенеджера)];

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ок, сделаю

Copy link
Contributor Author

@dvakor dvakor Dec 13, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Слушай, а контекст модуля обработки между тестами же теряется, я имею ввиду что постоянно инициализировать структуру с менеджерами перед каждым тестом это долго относительно простыни if`ов :)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Лучше давай я добавлю другие объекты, щас только те, что мне нужны тут, а кто-то может и в задачах \ бизнес процессах хранить макеты, можно конечно и регистры все добавить, но тут щансов мало, что кто-то хранит макеты СКД :)

Еще можно добавить макеты СКД из общих макетов

Copy link
Collaborator

@artbear artbear left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

очень крутое и полезное дополнение.
Огромное спасибо!

я предлагаю сделать небольшую доработку выше, но это не критично.
Если сильно не хочется, могу и так принять :)

@dvakor
Copy link
Contributor Author

dvakor commented Dec 13, 2018

В общем я добавил все возможные метаданные где теоретически могут быть макеты СКД
А получение менеджера предлагаю так же оставить, ибо структуру я не знаю как закешировать, а так это расточистельство )
Еще убрал тразакции ибо не нужна вообще, это у нас шаблон просто для кода модуля объекта теста, сразу видимо мы проглядели.

@artbear
Copy link
Collaborator

artbear commented Dec 13, 2018

Нам никто не мешает передавать коллекцию менеджеров как параметр теста ;)
Мы же или на сервере или на толстом клиенте выполняем
И проблем быть не должно

@artbear
Copy link
Collaborator

artbear commented Dec 13, 2018

И будет общая структура

@dvakor
Copy link
Contributor Author

dvakor commented Dec 13, 2018

А почему вы в толстом тесты гоняет?) я такой вариант отбросил как раз из за тонкого клиента

@artbear
Copy link
Collaborator

artbear commented Dec 14, 2018

Продукт универсален и может/должен работать в разных режимах 1С, если явно не указан режим использования в коде.
Есть команды, которые юзают УПП и самописные конфы.
Практически все, что работает на сервере, можно запустить и в толстом клиенте.
СКД вполне можно проверить и на толстом клиенте и это будет полезно всем;)

@dvakor
Copy link
Contributor Author

dvakor commented Dec 15, 2018

тэкс, тогда щас буду задавать глупые вопросы)

Я просто хочу сам юзать данный тест уже из адд как на нее перейдем (щас еще на старых 2 проектах сидим), но без тонкого клиента у нас умрет наш воркфлоу

Мы юзаем гит, без хранилища, соответственно у нас почти гит флоу, т.е.

Ветка -> разработка -> прогон тестов руками (вот тут все сломается) -> ПР -> проверка билда CI сервером (прогон тех же тестов) -> код ревью -> мерж

И мы все разработку ведем в тонком.

Так вот, я пару месяцев назад ввел обязательным 3й пункт ибо получалось как тут
EvilBeaver/OneScript#835
В этом ПРе 2 последних коммита, чисто из-за моей лени сразу прогнать тесты, получилось 2 мусорных коммита "Пофксил то", "Пофиксил сё", т.к. дженкинс мне выдавал фейл билда, собственно у нас было также, и я ввел 3й пункт, чтобы таких коммитов было как можно меньше.
Но еще запускать отдельно толтсый клиент чисто чтобы прогнать тесты, меня сожрут))
Но если заменить чем-то автоматизированных 3й пункт, то у меня оснований не останется для отстаивания прав на работу теста в тонком клиенте, может дать совет как поступить?)

@artbear
Copy link
Collaborator

artbear commented Dec 18, 2018

@Archlord42Ru Или ты меня не понял, или я :(

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

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

Соответственно, при работе в тонком клиенте часть операций делается на сервере.
А при работе в толстом эти операции делаются, как правило, на толстом клиенте.

@artbear
Copy link
Collaborator

artbear commented Dec 18, 2018

я предлагаю сделать небольшую доработку выше, но это не критично.
Если сильно не хочется, могу и так принять :)

@Archlord42Ru ответь, будешь доделывать или нет?
если не будешь, приму сегодня :)

@dvakor
Copy link
Contributor Author

dvakor commented Dec 18, 2018

@artbear, буду.
Смотри, если я добавлю менеджер как параметр теста, он не будет работать в тонком клиенте, ибо менеджер не сериализуется, но сужу я по xUnit и хз изменилось ли что в add? (пока сам глянуть не могу)

@artbear
Copy link
Collaborator

artbear commented Dec 18, 2018

Смотри, если я добавлю менеджер как параметр теста, он не будет работать в тонком клиенте, ибо менеджер не сериализуется,

@Archlord42Ru мне казалось, что будет работать, если написать тесты в модуле объекта, чтобы работало и в толстом клиенте, и на сервере при запуске тонкого клиента.

но после твоих слов я задумался.

нужно проверить.
если сможешь проверь - добавь в свой же тест из текущего ПР параметр менеджер и проверь его запуск
если упадет на этапе загрузки тестов, тогда не работает.
если упадет на этапе выполнения, значит, работает :)

@dvakor
Copy link
Contributor Author

dvakor commented Dec 18, 2018

Смотри, если я добавлю менеджер как параметр теста, он не будет работать в тонком клиенте, ибо менеджер не сериализуется,

@Archlord42Ru мне казалось, что будет работать, если написать тесты в модуле объекта, чтобы работало и в толстом клиенте, и на сервере при запуске тонкого клиента.

но после твоих слов я задумался.

нужно проверить.
если сможешь проверь - добавь в свой же тест из текущего ПР параметр менеджер и проверь его запуск
если упадет на этапе загрузки тестов, тогда не работает.
если упадет на этапе выполнения, значит, работает :)

я уже проверял, это как раз была моя первая реализация :)
У меня просто вывалилась ошибка сериализация с сервера на клиент и я стырил собственно процедуру поиска менеджера из модуля БСП.

@artbear
Copy link
Collaborator

artbear commented Dec 19, 2018

лады, тогда мержу.

@artbear artbear merged commit ae1defd into vanessa-opensource:develop Dec 19, 2018
@artbear
Copy link
Collaborator

artbear commented Dec 19, 2018

@Archlord42Ru Большущее спасибо!
Очень полезно.

@artbear
Copy link
Collaborator

artbear commented Dec 19, 2018

Насколько я понимаю, в репозиторий Vanessa.ADD ты вливаешься в первый раз, верно?

Поздравляю с добавлением в команду контрибьюторов :)

Нас стало еще больше!

@dvakor
Copy link
Contributor Author

dvakor commented Dec 19, 2018

Ну да в адд первый раз, я в основном в движок оскрипта контрибучу :)

@dvakor
Copy link
Contributor Author

dvakor commented Dec 19, 2018

Кстати, странно, что ты еще на инфостарте не попросил меня кинуть ПР, я тебе про тесты макетов как то заикался на инфорстарте, толи на ворлд кафе, толи когда мы хакатонили с тобой и Лешей :)

@artbear
Copy link
Collaborator

artbear commented Dec 19, 2018

@Archlord42Ru там был такой драйв, до ПР ли было :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants