1

I am new to Karate Framework and I need to execute multiple scenarios from one feature file on chrome, msedge and firefox browser. After each scenario outline I am adding configuration type in Example, as below:

Feature: Login test

Background: #* configure driver = {type: 'msedge', headless: true} #* configure driver = [{type: 'msedge'}, {type: 'chrome', executable:'C:\Program Files\Google\Chrome\Application\chrome.exe'}] * def element = read('classpath:Test/FunctionalAutomation/Locators/LoginWebelement.json') * def data = read ('classpath:Test/FunctionalAutomation/TestData/DataLogin.json')

  Scenario Outline: Login to application with positive and negative scenario
    #With correct p/w
    * configure driver = {type: '<conf>', executable: '<exePath>'}
    Given driver "https://www.saucedemo.com/"
    And input(element.x_username, data.txt_username)
    And input(element.id_password, data.txt_password)
    When click(element.id_loginButton)
    Then print driver.title
    Then match driver.title == 'Swag Labs'
    Examples:
      | conf   | exePath                                                           |
      | msedge | C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe |
      | chrome | C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe        |


  Scenario Outline: With invalid p/w
    * configure driver = {type: '<conf>', executable: '<exePath>'}
    Given driver "https://www.saucedemo.com/"
    And input(element.x_username, data.txt_username)
    And input(element.id_password, data.txt_wrongPassword)
    When click(element.id_loginButton)
    Then print text(element.x_errorMessageText)
    Then match text(element.x_errorMessageText) == data.err_msg_incorrectCredential
    Examples:
      | conf   | exePath                                                           |
      | msedge | C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe |
      | chrome | C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe        |

Is there any way so that I can avoid repetition of same Example after each scenario as I wanted to execute scenarios on Chrome, firefox as well as edge.

Ash Desh
  • 61
  • 2

0 Answers0