我有多个验证要在一些网络用户界面上完成。所以与其写作
Then I see "foo" element on the page
And I want the user to see "bar" text
.
.
.
And new order is generated
我希望我的功能文件更具可读性(这可能是特定于应用程序的,而不是特定于业务的),应该是这样的
Then following validations are made
* "foo" element is visible
* "bar" text is visible
.
.
.
* new order is generated
我的问题是,“*”关键字有能力适应文档中的任何步骤,我是否正确使用了它?(我认为不是因为我的IDE不这么认为)。正确的使用方法是什么?换句话说,如何使用*编写步骤,以便IDE理解和识别步骤定义
如果我没有正确理解,请告诉我。
编辑:我使用“*”的方式是正确的,我们必须写一些
* "foo" is present
IDE没有意识到这可能是插件的问题,我用任何标准关键字(给定/何时/然后)编写了步骤和相应的步骤定义,cucumber识别了它并相应地工作
GWT应该被视为:给定某种先决条件,某种测试设置。当发生的动作然后动作的预期结果
And和But只是前面给出的When或Then的表示。
有时候,这种方式的场景并不是最好的方法(不是所有的工作都需要相同的工具),列出“东西”是更可取的。即
* Open web browser
* Go to google
* Search for Cheese
* Select a cheese to buy
* go to shop
* buy cheese
* eat cheese
* feel happy
这里应该使用*来显示指令顺序列表。(我也很高兴地指出,上面的内容可以很容易地写进GWT,如果你足够理解你想要描述的内容,大多数事情都可以做到)。
我使用的方法是找到所有验证的整体名称,你的验证验证了什么?
当你做到这一点写一个单一的步骤
那么'my foo应该是有效的'
然后将其实现为
然后“我的foo应该是有效的”do should_have_valid_bar should_valid_baz。。。结束
然后编写帮助器方法来实现这一点。这将执行以下操作
总的来说,要让你的简历简洁明了,不要详细说明事情是如何完成的。将其向下推到步骤定义和帮助器方法中。
我有Maven应用程序,具有3个不同的配置文件,如下所示 我有这样的Maven结构: src/main/config/default/WEB-INF/WEB。xml src/main/config/dev/WEB-INF/WEB。xml src/main/config/test/WEB-INF/web.xml src/main/config/prod/WEB-INF/web.xml src/mai
问题内容: 我正在与我的CompSci教授交谈,他建议将所有String 方法编写为: 而不是: 这两行都可以编译,但是我想知道第一种方法的好处是什么?我一直都是后一种方式。错了吗 什么是普通/常规? 问题答案: 第一种方法确保执行比较时不会收到 NullPointerException 。当您尝试在不存在的对象上调用方法时,抛出(发生)此异常。 以下是一些相关的切线:仔细阅读风险自负 不过要注意
问题内容: 我正在尝试使用一个使用大量jQuery的Layout / Template的项目。 我已经学会了将模板与ReactJS Project集成在一起,但是,我正在寻找一种可以完全替代jQuery的解决方案。 我的解决方案之一是在内部使用jQuery函数或React函数。 这种方法正确吗?这是正确的方法吗? 我在下面附上一个小例子: 这是我的职能。 问题答案: 这种方法正确吗?这是正确的方法
这就是我目前拥有所有实体类的方式(此处仅显示一个以供参考) 来自lombok参考: @Data注释可能是项目Lombok工具集中最常用的注释。它结合了@ToString、@EqualsAndHashCode、@Getter和@Setter的功能。本质上,在类上使用@数据与使用默认的@ToString和@EqualsAndHashCode注释该类以及使用@Getter和@Setter注释每个字段是一
本文向大家介绍OCaml 使用功能关键字,包括了OCaml 使用功能关键字的使用技巧和注意事项,需要的朋友参考一下 示例 function定义函数主体时,关键字自动具有模式匹配。在下面观察它:
问题内容: 即使在使用Java Swing一年以上之后,对我来说,它仍然像魔术一样。如何正确使用BufferStrategy,尤其是方法? 我想添加一个JFrame和一个Canvas,然后进行绘制。我还希望能够调整()画布的大小。每次我调整Canvas的大小时,似乎都会被浪费掉,或者变得毫无用处,因为在上使用并没有真正做任何事情。另外,它具有怪异的不确定性行为,我不知道如何正确同步它。 这就是我的