- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果我的功能定义中有这样的子句:
Then I can see the "/relative-url-path" page
Cucumber会强加这个方法:
@When("^I can see the \"([^\"]*)\" page$")
public void I_open_the_page(String arg1) {
// Express the Regexp above with the code you wish you had
throw new PendingException();
}
如果我确实想用引号突出显示 URL 相关部分,如何强制 gherkin 解析器将 THEN close 解释为“纯字符串”。换句话说,我可以如何逃避它吗?
如果我有电话号码,也会有同样的问题吗?
最佳答案
首先,如果您使用 Ruby 作为步骤定义,我认为“何时”前面不应该有 @ 符号。这可能会给您带来问题(我不知道)。如果您不使用 Ruby,那么了解您的步骤定义使用的语言会很有帮助。
我可以告诉你我对引号中的文件路径做了什么:
When I upload invoice "C:\Ruby193\automation\myfile.txt"
然后我使用了这段代码:
When /^I upload invoice "(.*)"$/ do |filename|
@upload_invoice_page = UploadInvoicePage.new(@test_env)
@upload_invoice_page.upload_file(filename, 'BIRD, INC.')
end
按照该示例,在 Ruby 中,我将尝试为您的步骤编写此代码:
When /^ can see the "(.*)" page$/
您的代码看起来可能像 Java,因此可能类似于:
@When("^I can see the \"(.*)\" page$")
您可以在其中放置更复杂的正则表达式,但由于它是 Gherkin 步骤,因此您实际上并不需要它。看来目前您正在尝试获取非双引号的任何内容。您不需要这样做,因为正则表达式已经在寻找开盘价和收盘价。
请记住,您也可以完全删除引号:
Then I can see the /relative-url-path page
@When("^I can see the (.*) page$")
仅在您认为更易于阅读时才保留引号。有关正则表达式的更多信息
要仅匹配数字,您会这样做:
Then I can see the 123456
@Then("^I can see the (\d*)$")
我发现理查德·劳伦斯的 Cucumber Regex Cheatsheet 非常有帮助。您会在那里找到您需要的大部分模式。如果您需要更复杂的模式,您可以考虑是否最好在步骤定义代码中进行该评估。
关于java - 从 Gherkin 语句中转义数字或带引号的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10144860/
我正在尝试运行注册示例,但卡住了 Scenario: New user registration; poor password Given I am on "/register" When I
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 4 年前。 Improve
嗨,我正在尝试用小 cucumber 语法编写表达一组要求,但它需要大量重复。我看到here我可以使用占位符,这对于我的任务来说是完美的,但是我的 Give 和 then 中的一些数据是集合。我将如何
尽管我已经编写单元测试 20 多年了,但我对 Gherkin 还很陌生,并且接到的任务是为 .feature 文件实现一个故事,该文件可简化为如下内容: Scenario: a Given t
我正在使用 Behat 等工具定义要在 BDD 工作流程中使用的功能。或 Cucumber , 使用 Gherkin语。这是迄今为止的特征定义: Feature: Save Resource
我管理着一个测试团队,开发人员希望我们记录的测试场景能够创建自动化回归测试(基于网络的工具)。我们的场景是用小 cucumber 格式(Given/When/Then)编写的,但我想知道需要多少细节来
我想以 Robot Framework 中可能最“优雅”的方式将多个参数传递给我的测试用例。许多框架中使用的场景大纲允许用表中的值替换变量/关键字。表中的每一行都被认为是一个场景。 Robot Fra
英语可能含糊不清,在我看来,在使用 Gherkin 的方法论中有一个假设,即任何会说一定程度英语的人都可以编写和理解测试用例,甚至在编写任何代码之前也是如此。 鉴于以下需要自动化的简单测试场景,该方法
在编写验证输入表单上的信息的 BDD 场景时,您将如何列出规则。 选项是: 1) 每个规则一个场景 2)场景大纲,每个领域和规则的例子 我们如何说某些不在特定字符集中的无效内容,例如: 鉴于我输入了一
我一直在使用 SpecFlow 进行验收测试。这使用 Gherkin(DSL Cucumber 使用)。它包括一个有趣的功能,称为“标签”。我可以看到其使用的实用性,但我不确定在 BDD 中使用标签的
在 Gherkin 语法中(Cucumber 和 SpecFlow 使用的,我可以通过在行前面加上“#”前缀来注释掉该行 有什么办法可以阻止多行注释吗? 最佳答案 Gherkin 不支持它,因此您必须
我有一些 SpecFlow 功能(使用 Gherkin 语法),我想暂时禁用该功能以防止其测试运行? 是否有一个属性可以用来标记该功能来执行此操作?我猜测适用于 Cucumber 的东西也可能适用于
如果我的功能定义中有这样的子句: Then I can see the "/relative-url-path" page Cucumber会强加这个方法: @When("^I can see the
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题吗? 更新问题,以便 editing this post 提供事实和引用来回答它. 关闭 4 年前。 Improve
我正在用 Cucumber Java 做一个简单的 rest api 测试。响应采用 Json 格式。 我写的小 cucumber 特征文件看起来像: Scenario: Given I
我使用 IntelliJ 在 IDE 中用 Java 编写了 Cucumber 功能文件,即 *.feature 文件和相应的步骤定义文件。用户体验非常好,IDE 打开其 IntelliSense,显
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答它。 关闭 4 年前
有谁知道实现这一目标的方法,或者他们认为这是一个好主意。在 Gherkin 中使用 OR 样式语法以减少重复但保持人类可读性(希望如此)。我正在考虑使用多个 OR 语句的每个组合扩展子句组合的情况。例
我正在尝试创建一个场景,其中两个用户将访问该应用程序,因此当一个用户(或多或少)将其放在购物车上时,我可以模拟售罄的产品。 例如。Given user1 access websiteThen user
我对小 cucumber 还很陌生,正在为我的第一个项目而苦苦挣扎。基本上,我们有很多输入参数,这些参数是一个精美的计算器所需要的,可以帮助人们确定他们是否能够负担抵押贷款。 我最好是专注于输出的一部
我是一名优秀的程序员,十分优秀!