2

有没有办法跨多个功能重用黄瓜场景,每个功能都共享相同的 UI 特征?

例如,如果我正在创建一个 iPhone 应用程序,那么无论实际显示什么,我都会为每个表格视图屏幕运行某些测试。这些将是添加新行、删除行、重新排序等。

将这些复制并粘贴到每个功能中会破坏 DRY。有没有办法在黄瓜中指定通用或模板化测试,我可以将其包含到需要它们的每个功能中?

4

1 回答 1

1

不要将 BDD 视为测试。可以将其视为提供一组示例,说明您的应用为何有价值以及如何使用它。

如果应用程序对每个表使用相同的代码,那么您只需要一个示例。我希望它的措辞类似于:

Given Quentin has three films listed
When he adds "Kill Bill" to the film list
Then he should be reminded that he already owns it.

Given Quentin has mistakenly added "Twilight" to his favourite films
When he deletes it from the film list
Then it should no longer be in the table.

您可以制作的场景越有趣和人性化,您就越能够弄清楚为什么您的应用程序很有价值。那是 BDD 的真正核心——不是测试,而是首先知道为什么要编写代码。

与真正想要该应用程序的人交谈将帮助您了解它应该做什么 - 如果您自己编写它,请购买橡皮鸭!

于 2012-11-13T00:51:40.397 回答