2016-11-03 85 views
-1

我是新来的黄瓜作为测试套件。我注意到当我构建功能和编写步骤时。比方说,作为一个不好的例子(因为我向后工作),我写了一堆东西来创建需要用户的帖子。黄瓜:编写不同功能集之间共享的黄瓜步骤的最佳做法?

我最终编写了一组基于用户的步骤(登录进程等)在主要专用于Post功能的功能集中。

随着测试变得越来越复杂并且功能被添加,后面的步骤进入适当的功能集是否最佳实践?

回答

1

这里有两个部分需要考虑。

  • 组织场景,使其有意义。那就是将它们放在正确的feature文件中。
  • 组织这些步骤的实施,使它们有意义。也就是说,在适当的源代码文件中实现这些步骤。

你的问题归结为“在我的上下文中什么是合理的?”。

这取决于您的利益相关者,他们是否希望所有面向用户的场景都放在同一个功能文件中,还是他们更关心有时涉及用户的面向业务的场景?组织场景,让你的利益相关者感到高兴。

那么你应该如何组织步骤呢?这取决于您的开发人员以及您在不同源代码文件中实施的步骤定义之间共享状态的能力。

我的做法可能是从小处着手,让套件增长。这最初不会涉及运行时在不同类之间共享状态。当套件感觉很大时,将它分成两部分,就像你可以制作的一样。当这个变得很大时,再次重复这个划分。希望你会得到一些在你的情况下运作良好的东西。

请记住,您的环境和您的产品是独一无二的。它可能值得您团队认为可以维护的独特解决方案。

可理解性和可操作性是我可以考虑的关于您正在构建的可执行规范的最重要属性。

+0

感谢您的回答。这是一个学习Cucumber和一些新的轨道功能的个人项目。关于分割零件直到它变得连贯的部分是我在问这个问题之前开始做的事情,看看什么是最好的。再次感谢您的意见。 – Antonio