如何在 cucumber-js 中测试结果是多行字符串?
How to test in cucumber-js a that a result is a multi line string?
我想测试一个步骤的结果是否有特定值,但这个值是一个多行字符串,包含 |
、-
和任何特殊字符。
字符串可能如下所示:
{ ------- }|
{aaaaaaaaaa|
{aaaaaaaaaa|
我不确定如何在功能中执行此操作,因为这会引发语法错误:
Feature: asdada
Scenario: test
Given test
When test
Then the result is:
{ ------- }|
{aaaaaaaaaa|
{aaaaaaaaaa|
不要这样做,你只会让你的场景变得非常脆弱。而是给字符串一个名称并在场景中使用该名称,例如Then I should see the foo result
。现在您可以将字符串比较委托给步骤定义,并根据您的选择定义 foo 结果。
场景是关于记录您正在做的 what
并且 why
它很重要。结果的格式是关于 how
你正在做的事情。如果你把方法放在场景中,那么每次你改变你做某事的方式时,你都必须改变场景。这使得小的改变变得更加昂贵。
示例来自
感谢 Grasshopper 的回答。
Given a blog post named "Random" with Markdown body
"""
Some Title, Eh?
==============
Here is the first paragraph of my blog post. Lorem ipsum dolor sit amet,
consectetur adipiscing elit.
"""
我想测试一个步骤的结果是否有特定值,但这个值是一个多行字符串,包含 |
、-
和任何特殊字符。
字符串可能如下所示:
{ ------- }|
{aaaaaaaaaa|
{aaaaaaaaaa|
我不确定如何在功能中执行此操作,因为这会引发语法错误:
Feature: asdada
Scenario: test
Given test
When test
Then the result is:
{ ------- }|
{aaaaaaaaaa|
{aaaaaaaaaa|
不要这样做,你只会让你的场景变得非常脆弱。而是给字符串一个名称并在场景中使用该名称,例如Then I should see the foo result
。现在您可以将字符串比较委托给步骤定义,并根据您的选择定义 foo 结果。
场景是关于记录您正在做的 what
并且 why
它很重要。结果的格式是关于 how
你正在做的事情。如果你把方法放在场景中,那么每次你改变你做某事的方式时,你都必须改变场景。这使得小的改变变得更加昂贵。
示例来自
感谢 Grasshopper 的回答。
Given a blog post named "Random" with Markdown body
"""
Some Title, Eh?
==============
Here is the first paragraph of my blog post. Lorem ipsum dolor sit amet,
consectetur adipiscing elit.
"""