Комментарии 55
Хорошо бы для начала описать решаемую проблему.
Вы проверяете рельзтат расчёта в типовой конфигурации?
Не доверяете вендору?
Это статья. Решаемая проблема довольно обширна.
А вопрос вопрос не доверия вендору не обсуждается.
Это статья.
и для чего эта статья?
Даже зная, что такое VA - я ничего не понял из статьи. Пример взят, на мой взгляд, весьма идиотический - "проверить результат простейшего расчета в типовой конфиге". В общем, ценность статьи - имхо, отрицательная. После таких статей 1с-ников и начинают считать дебилами.
Вендору верить опасно. ) проверено.
А как проверить расчет для проверки расчета?
Решаем выдуманные проблемы без понимания БП. Затем такие тестировщики однажды узнают, что бывают вычеты по НДФЛ.
Выглядит довольно бессмысленно. Сценарий написан под сферического коня в вакууме. НДФЛ, например, имеет прогрессивную ставку, расчёт в пределах налогового периода и вычеты к доходам. Умножить на 0,13 для проверки не даст примерно ничего.
Напиши, пожалуйста, твое представление как можно автоматизировать проверку данного расчета.
Думаю, что прогрессивную шкалу НДФЛ и как автоматизировать ее проверки лучше рассмотреть в отдельной статье.
Строго говоря - весь расчет зарплаты это большое количество простых математических операций, произведенных в правильной последовательности. Проверять с помощью ванессы что дважды два четыре - кажется не очень нужным.
И если расчет налогов и взносов, как производную от результата ты можешь относительно быстро сравнить с вычисленными значениями(такая возможность есть в отчетах типовой поставки), то начисление зп зависит от корректности поданных на вход показателей. Следовательно тебе нужно будет вторично выполнить сбор информации о рабочем времени, значениях плановых показателей и отклонений от них. И выполнишь ты его с помощью того же менеджера расчетов, что замкнет круг)
"кажется не очень нужным" - а я думаю, что нужно.
Конечно, можно все считать вручную с помощью калькулятора, или например на листке бумаги в столбик. Кому как удобно)
Но, я думаю, что если можно автоматизировать проверку - то это надо делать.
а как вы проверяете правильность умножения?
Не, совсем понял вопрос.
Но, если нужно проверить какой-то вычисление - то нужно его повторить и сравнить со своим результатом.
повторяю вопрос: как вы проверяете правильность умножения? Правильно ли получен результат от, скажем, умножения начисленного на 0.13? Правильно ли округлилось в расчете? а то мало ли...
Да, вопрос очень "интересный".
А вычислить нужно один раз или много?)
а нужно протестировать нужное количество раз (и протестировать, нужное ли количество раз мы протестировали).
кстати, а вы этот свой тест однократно запускаете? а то вдруг результаты при втором расчете (или при 53-м) изменятся.... Или со временем изменяются. мало ли... сегодня программа правильно посчитала, а завтра результат изменился...
если нужное количество раз - то надо писать алгоритм.
Запускать автотесты нужно каждый релиз (сборку).
А с чего бы должны изменяться результаты во времени?)
Может быть вы куда то летите?) С каким ускорением?)
если нужное количество раз - то надо писать алгоритм.
так почему вы его не написали, и ограничиваетесь однократной проверкой типового кода?
А с чего бы должны изменяться результаты во времени?
а с чего они не должны изменяться? вы же не верите вендору, что его типовой код в типовой конфигурации считает правильно, проверяете за ним. почему кто-то должен верить, что результаты не изменятся во времени?
Да, кстати, а как вы тестируете результаты тестов? вдруг типовая конфигурация посчитала правильно, а ваш тест кривой?
"а с чего они не должны изменяться? " - приведи пример.
"вдруг типовая конфигурация посчитала правильно, а ваш тест кривой? " - в жизни все может быть.
"а с чего они не должны изменяться? " - приведи пример.
Это имеет смысл.
Зависимость может быть от даты, например.
Особенно в зарплатных расчётах, как в вашем примере.
"Зависимость может быть от даты, например." - имеется ввиду, что у каждого документа есть дата, так?
И получается, что есть историческая последовательность документов и каждый новый документ должен учитывать документы заведенные ранее?
Нет, алгоритм расчёта может зависеть от даты документа.
Например, в зависимости от каких-либо НПА.
сегодня НДС 18%, а завтра 20%. Сегодня НДФЛ 13%, завтра 15%. Или прогресссивный (и зависящий от предыдущих). Или вычет изменился. а вычет зависит от даты рождения ребенка. и т.д.
поэтому ваш тупой пример достаточно проверить калькулятором (тупой он потому, что используется не на реальных данных, а на демосотруднике в "идеальных условиях" - завели нового сотрудника, у которого не было начислений, удержаний, нет отпуска и т.п.. Т.е. в тех условиях, в которых невозможно ошибиться до релиза)
Вот, мне совсем не понятно что ты пишешь.
Что значит "Сегодня НДФЛ 13%, завтра 15%."? - Это как?
Ставка НДФЛ зависит от дохода физ лица - а не от "Сегодня" или "завтра".
Вот, мне совсем не понятно что ты пишешь.
Ничего удивительного. Если бы было понятно - ты б не писал такую статью :-)
Это так. в 2019 - 13, а в 2025 при том же доходе - 15. и сегодня по доходу с начала года удерживаем 13, а завтра, в новом месяце, уже больше.
Вот, статья. Почитай. https://www.nalog.gov.ru/rn05/news/activities_fts/15068109/
"сегодня по доходу с начала года удерживаем 13, а завтра, в новом месяце, уже больше. " - Если физ лицо сегодня получило доход в 3 млн рублей, то какой НДЛФ должен быть удержан?
хоссподя, тостер начинает меня учить... или экзаменовать?
хоть выражайся нормально - физлицо "получило сегодня", или "получило на сегодня"?
Если "на сегодня", то 13 с 2400, плюс 15 с 600 (312+90=402. вроде. калькулятор открывать лень)
А если "сегодня", то не знаю - вдруг оно еще вчера уже 3 ляма получило? Или даже 18?
Да, я тебе задаю вопросы - чтобы понять твой ход мыслей.
Потому, что формулировки "сегодня по доходу с начала года удерживаем 13, а завтра, в новом месяце, уже больше. " - указывают на то, что ты не разбираешься в вопросе.
указывают на то, что ты не разбираешься в вопросе.
О как... сдается мне, мил человек, что всё с точностью до наеборот....
Идея подобного тестирования кажется мне бессмысленной, в силу отсутствия заведомо эталонных данных для сравнения
В том то и дело, что много факторов влияющих на расчет.
Но, если известна формула и известны переменные (значения) - то почему это не сделать автоматизированный сценарий?
Кажется, что "много факторов" и "известна формула" не сочетаются вместе
В статье я рассмотрел самый простой пример расчета ЗП.
Заранее подумал, что если расписывать все факторы (вычеты, исполнительные листы, неполные ставки) - то получится очень запутанно.
А чем же не сочетаются "много факторов" и "известна формула"?
Чем больше факторов - тем более сложная формула для вычисления.
Высокая когнитивная сложность не даёт полагаться на умозрительную оценку правильности.
Чтобы подтвердить правильность тестовых данных, нужен такой же объем тестирования, как и для расчетов в 1С.
Считаю, что большинство отзывов о данной статье сильно необоснованными, данная статья - не научная или кандидатская диссертация, написана отлично, донесена простым языком, человек даже разъясняет, в чем заключена сложность этого подхода и на понятно примере объясняет саму суть. Также рассматриваются фатальные случаи - «ошибки в расчетах». В чем причина, то что вы так придираетесь, автор молодец, информативная статья, так держать!
Вы поняли из статьи какая решается проблема?
В чем она проявляется?
Проблема тестирования расчетов и как их можно автоматизировать с помощью инструмента vanessa automation
А каких именно расчетов?
В типовой конфигурации?
Вы хотите проверить все имеющиеся в ней расчёты?
С какой целью?
"А каких именно расчетов?" - Любых.
"В типовой конфигурации?" - думаю, что это не важно типовая или нет.
"Вы хотите проверить все имеющиеся в ней расчёты? " - Это очень амбиционная цель. Лучше, начать с самого простого.
"С какой целью? " - Чтобы не проверять это вручную.
На мой взляд любая проверка не может быть самоцелью.
В чём первопричина вашего стремления к проверкам всего и вся?
А что такое тестирование? Это процесс в котором проверяется качество ПО. Если можно автоматизировать какую то проверку - то это нужно сделать, почему нет?
Может быть у вас есть какой то альтернативный способ?
Всё-таки не понимаю вашей глобальной цели.
Смотрите - возьмём, например, 1С Бухгалтерию, которую используют буквально миллионы предприятий.
И обновления к ней выходят регулярно.
Мне сложно предположить, что все они должны заниматься всеобъемлющим тестированием всех имеющихся в ней расчётов после получения каждого обновления.
Ошибки, конечно, периодически бывают у всех, но вендор чаще всего оперативно их исправляет.
Конечно, с этим согласен.
Может использоваться типовая конфигурация и при обновлении вероятность дефектов невелика.
Может быть вариант, что типовая конфигурация дополнена определенным (самописным) функционалом. Тогда, при обновлении вероятность возникновения ошибок - выше.
Но, тут конечно все зависит от конфигурации и "качества" кода.
Ничего он не понял. Это бот (единственный коммент, и тот невообразимо хвалебный к откровенно тупой статье)
Автоматизация проверки расчетов в 1С с помощью инструмента Vanessa automation