Open ghost opened 5 years ago
Имхо нужно сделать два плагина-бэкенда:
И тогда будут и овцы сыты и волки целы ;-) Тем более там как раз код с высокой связностью: вроде как парсинг геркина выделен в отдельный плагин-обработку, но с другой стороны он фактически не отделим и давно напрашивается рефакторинг, мы с @artbear уже этот вопрос затрагивали, когда обсуждали возможность впилить multiline-строки. В итоге строки Артур сделал, но без глобального рефакторинга.
Т.е. высокоуровневый план рефакторинга такой:
("Как нарисовать сову?" https://a.d-cd.net/87d8fb2s-960.jpg)
:heavy_check_mark: Profit!
Если просто тупо выкинуть текущую реализацию со всеми ее циклами и условными конструкциями, то это отвернет 99,9% всех пользователей, это убийство продукта.
@kuntashov чуть расширил - чтобы не звучала так страшно.
@kuntashov рефакторинг штатного парсера выделен в отдельный ишуз. Там еще и ускорение в 10 раз предстоит сделать ;-)
Вот "прекрасно" все в этом ишью - и мотивация, и решение. Вы хотите ADD закопать?
@atai я не понял вас ? вы хотите оставить Циклы и Условия ? почему вы решили это правильно ?
@atai я не понял вас ? вы хотите оставить Циклы и Условия ? почему вы решили это правильно ?
Хочу да. Трудоемкость написания тестов нужно снижать. При этом аргументация "тесты должны быть простыми" мне кажется ошибочной - тесты поведения должны быть на столько сложными, на сколько сложно поведение программы. Кроме того, аргументация в духе "мы тут едем в Лондон поэтому отломаем вам функцию которой вы пользуетесь"... ну как бы оскорбительно для пользователей. Мое мнение. Вынести циклы и условия в опцию - хорошо. Но опция должна быть по умолчанию включена. Вы и в Лондоне все покажете как хотите и не отломаете ничего пользователям ADD.
@atai я вас услышал и понял. Вы меня тоже поймите - у меня нет обоснования методического необходимости условий и циклов. Обоснование - нам удобно я знаю. Я даже знаю почему.
Я закинул удочку методологам по Cucumber в части условий и циклов - их позиция известна. Циклы - это структура сценария. Условия и перебор - это step_defitions.
Это противоречие которое необходимо разрешить в будущем.
@artbear проверять можно через Sonar Gherkin
Я правильно понимаю, циклы считаются неарийским методом и поддерживаться, развивать и даже исправляться не будут?
Если да. то у меня вопрос - есть например, тысяча контрагентов. которых мне нужно создать а потом выполнить для каждого из них двадцать действий в разных формах. Я правильно понимаю, мне нужно написать 20 тысяч строк? Или же это можно как-то третьим способом сделать?
Сделай реализацию шага и в коде напиши для сч по 10000 цикл Ванесса.шаг("
Существует проблема
Мы не можем съездить в Лондон - потому как вместо Gherkin кто-то реализовал какой-то свой DSL
Хотелось бы иметь следующую функциональность
Переход разделить на 2 этапа
Дополнительный контекст
В феврале нас пригласили в Лондон на конференцию, нужно переходить на правильные рельсы.
также смотри #281