首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cucumber --需要多少集成

Cucumber --需要多少集成
EN

Stack Overflow用户
提问于 2012-02-13 00:30:42
回答 2查看 84关注 0票数 0

我在使用selenium时遇到了一些困难(用户管理)。这让我开始思考场景/步骤应该有多专注。例如,我正在测试以用户身份添加帖子。

用户步骤(给定现有用户)是否应该单击页面注册,然后添加帖子?或者我应该通过模型创建用户,然后只点击帖子添加?

不要害羞,只需粘贴一个链接到一篇简短的解释文章;)

EN

回答 2

Stack Overflow用户

发布于 2012-02-14 23:38:20

我倾向于遵循Cucumber Book中推荐的方法(我不需要亲自动手)。通常,它建议使用直接模型访问来执行设置,这不是测试的重点

例如,对于“将商品添加到我的购物篮”测试,我将直接操作模型来创建登录用户和要添加的产品,然后使用浏览器集成来执行正在测试的操作,在这种情况下,单击“添加到购物篮”按钮并检查购物篮内容。

如果我真的在测试登录功能,我只会用Capybara/Webrat等工具开始点击登录页面。

票数 1
EN

Stack Overflow用户

发布于 2012-02-14 00:12:47

找到对发表文章的用户感兴趣的人,并与他们讨论场景。无论他们有什么关注点,都可能是你应该使用的焦点。

例如,他们可能会说,

代码语言:javascript
复制
Given there's a user who likes horses
And they're already logged in
When they add a post
Then it should be visible to other people who like horses

等。

这种语言是非常非正式的。我鼓励你尽可能地遵守他们的话。业务人员肯定不会在点击帖子、创建用户模型等方面进行讨论。你可以让下面的代码做任何必要的事情,以使你的业务场景工作。

如果某件事是“给定的”,那么做任何容易让它工作的事情。也许这就是破解数据或者破坏用户模型;也许这就是点击一个页面。如果你弄错了,你以后可以在不改变场景的情况下改变它,所以尝试任何简单的东西都是可以的。自动化UI的速度很慢,因此您最终可能会决定使用数据或模型,但如果您稍后这样做,您将对数据/模型的外观有更好的了解。

"When“是导致你感兴趣的行为的事件-在这个例子中,”当他们添加帖子时“。你应该总是从你能做到的最高层次来做这件事-一些人喜欢自动化UI,另一些人喜欢自动化控制器,但这基本上是你场景的核心,所以你不应该在这里修改数据。

Here's an article I wrote关于使用BDD进行对话,我认为这对你会很有用。你可能也喜欢这个,"Step Away from the Tools",或者this rant I wrote on StackOverflow

然而,BDD最重要的事情是与人交谈。请尽量做到这一点,不要让工具阻止你这样做!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9250440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档