Behavior-Driven Development in Python

preview_player
Показать описание

In this video:

Overview of Behavior-Driven Development (BDD); the key differences between unittest/TDD and BDD; Strategies for aligning the software development process with non-technical stakeholders; the "behave" library for implementing BDD in Python, and its DSL configuration language (Gherkin); and more.

From the 2024-06-11 Bootcamp group mentoring session.
Рекомендации по теме
Комментарии
Автор

I'm not starting from 0 and have read a good amount of BDD theory, but if just based on this video, i would share sentiments with funny comment at 16:53.
If i was in the audience with 0 knowledge and see the tutorial page at 4:38 I would think
1. Why split feature file and step file, how are they related
2, Why are all step file functions named the same step_impl
3. How is the code related to the concept being tested? For eg. Why Given we have behave installed translates to pass. Why When we implement a test translates to assert True is not False.

I think it's the result of a combination of the tutorial example was being trivial/meta and removed from real use cases, and the introduction being too abstract, teaching from top down and comparing between testing systems (TDD (pytest) vs BDD (behave)) without first establishing a stronger foundation of BDD theory through understanding how behave works. Personally i would want both top down and bottom up simultaneously. Theory -> code -> explained output -> theory -> code -> explained output to make strong connections/understanding with tight cause-effect feedback loops to ease the discomfort of short term memory being flooded with abstract theory/BDD philosophy without existing knowledge to link new knowledge to. So require either creating strong analogies to existing knowledge (which wasn't done here since TDD is different from BDD), or sufficient depth in explanation to build a separate connected graph of concepts (which this part of the lesson plan may not have intended)

Han-veuh
join shbcf.ru