Selenium 除了DSL之外,Cucumber over TestNG和Junit的效用是什么?如何使用@Test注释和Gherkin的When-Then注释?

Selenium 除了DSL之外,Cucumber over TestNG和Junit的效用是什么?如何使用@Test注释和Gherkin的When-Then注释?,selenium,cucumber,testng,Selenium,Cucumber,Testng,我有两个问题 我知道特定于域的语言可以用来编写cucumber中的接受案例,但在实现这些步骤@Given、@When、@时,步骤定义中会使用注释,那么如果不必使用数据提供程序、分组或并行执行并使用IDE运行,那么是否需要TestNg或Junit? 由于@Test通常用于仅使用TestNg的完整测试场景,因此当Cucumber也被使用时,是否需要使用@Test注释?如果是,那么它如何与@Given、@when、@then一起使用? 公元1年。 使用小黄瓜的好处是它的规范也可以被非程序员阅读。 将小

我有两个问题

我知道特定于域的语言可以用来编写cucumber中的接受案例,但在实现这些步骤@Given、@When、@时,步骤定义中会使用注释,那么如果不必使用数据提供程序、分组或并行执行并使用IDE运行,那么是否需要TestNg或Junit? 由于@Test通常用于仅使用TestNg的完整测试场景,因此当Cucumber也被使用时,是否需要使用@Test注释?如果是,那么它如何与@Given、@when、@then一起使用? 公元1年。 使用小黄瓜的好处是它的规范也可以被非程序员阅读。 将小黄瓜与Cucumber结合使用的好处是,您可以将这些规范自动化,以实现自动化测试或可执行规范。 Cucumber自动化的另一个好处是,实现的步骤可以重用,这使得添加类似的测试场景更加容易。单元测试工具并不具备这种步骤的可重用性,尽管有人可能会认为它们更容易编写。 必须实现步骤定义的缺点是必须实现步骤定义,这可能需要一些时间。一些开发人员认为这过于冗长。因此,只有当它在与非技术人员的交流中带来附加值时,我才会这么做

注1:您仍然需要JUnit或TestNg作为断言库

注2:Cumber本身不支持并行执行

公元2年。
您不需要将@Test annotation与Cucumber一起使用

,这取决于谁对测试做出了贡献,Cucumber是为了在进行测试时牢记这一点。有关为什么要这样做的更多详细信息,请参阅。