在BDD中,将尚未实现的测试与实现的测试分开的策略是什么?

In behaviour driven development, you write the tests first.

However, when you are in the middle of development and you have a functional but limited application, some tests will have been implemented and some will not have been.

How do you keep all the failures of the not-yet-implemented tests from obscuring the true errors?

I found the solution here:

https://github.com/Codeception/Codeception/issues/3823

Mark the scenarios with a tag (e.g. incomplete) and then use:

codecept run functional --skip-group incomplete

This is a tooling issue. But one solution that is available in many implementations is to tag scenarios. Those not done yet can be tagged wip, as in work in progress. And then just skip those in you build.

Writing features in advance is a good idea if you want them to drive the development. The trick is to write them late enough so they really drive the immediate development. Writing them weeks or months ahead is probably not the way to go. Writing them a a day or a few hours before implementation is probably a better idea.