Поскольку код стоит, трудно определить тесты, потому что он не в форме того, что мы можем назвать;мы не можем изменять входные данные и быть уверенными в том, что получим определенные выходные данные.
Итак, насколько я могу убедиться, вы можете проверить, что в итоге график заполняется ожидаемыми данными.Каким-то образом вы вызываете этот код и смотрите, что на графике.
Теперь, глядя на код, на ум приходит несколько вопросов:
- Почему диапазон дат жестко закодирован?*
- Что это за v201008, почему это жестко запрограммировано?
- Где обработка ошибок?Могут ли эти $ user -> ???методы терпят неудачу?
Поэтому я бы изменил этот код, чтобы обобщить его, и поместил бы его в функцию.Затем мы можем проверить функцию.Представьте себе функцию (в псевдокоде)
graph = getGraph(start, end, version)
, теперь вы можете изменять входы и проверять ответ, но ... откуда вы знаете, каким должен быть ответ?Вы можете сделать все возможное, чтобы издеваться над услугами, которые вы используете.Затем вы можете также утверждать, что вы вызываете сервисы с правильными параметрами, и для некоторых тестов вынуждаете сервисы вызывать условия ошибки.при этом вы, как правило, сосредотачиваетесь на скучных, но важных вещах, таких как обработка ошибок.