如何重用场景以在我的产品平台升级中运行?

时间:2016-03-10 04:51:01

标签: java selenium cucumber

以下方案在软件的v1中运行。 v2产品正在进行改造,并拥有一个全新的仪表板

唯一的变化是"登录v2"和"打开网格v2"它可以包含不同的步骤集,其余的功能场景保持不变。

我应该如何为我的场景建模,以便在v1和v2中运行测试时重用现有的场景定义。

我正在使用selenium Web驱动程序。

@Create
Feature: Create Orders

  Scenario: Login v1
    Given I navigate 
    And I enter user name
    And I enter password
    And I login

  Scenario: Open Grid v1
    Given I choose menu
    And I choose Orders menu

  Scenario: Scenario1

  Scenario: Scenario2

  Scenario: Scenario3

1 个答案:

答案 0 :(得分:0)

戴夫是对的。您可以使用其他标签,例如@ v1only,@ v2only,控制执行哪些场景。您可以在执行时指定标记(例如

@CucumberOptions(tags = {"@sometest","~@v1only"}) // run all @sometag that is not also tagged as @v1only

您可以使用不同的@Before(" @ v1only")和@Before(" @ v2only")块来控制,根据场景情况,设置什么并且拆除,@ After(" @ v1only")...和@After(" @ v2only")...步骤根据标签执行。在两者中工作的场景将省略唯一的标签。这是可行的。