0

我正在使用 Cucumber+Selenium+junit 来自动化测试用例。

示例场景如下所述。我将针对不同环境的多个示例传递到场景中。在我的测试应用程序中,密码每 60 天都会更改一次,并且在每个功能文件中更新这些密码非常麻烦。您能否帮助我如何参数化这些用户名和密码并从单独的配置文件中传递它,以便每次密码更改时我都可以在一个地方更新它们。

Scenario Outline: Verify the login functionality in xyz application

Given I open the browser

And I launch the xyz application <url>

When I enter the <username> and <password>

And click on sign in button

Then User should login successfully

Examples

@SIT

|url |username |password|

|sit.com|situser|sitpassword|



@UAT

|url |username |password|

|uat.com|uatuser|uatpassword|



@Training

|url |username |password|

|training.com|traininguser|trainingpassword|
4

1 回答 1

2

只需编写没有凭据的场景。然后在您的步骤定义中获取密码

你可以写这样的场景

Given I am registered on UAT
When I login into UAT
Then I should be logged in

然后像

module EnvTesterSH
  def get_current_creds(env: )
    ...
    [id, password]
  end
end
World EnvTesterSH

Given 'I am registered on UAT' do
  @id, @password = get_current_creds(env: :uat)
end

现在你的问题是你如何编写代码来获取新的凭据,我猜这完全取决于谁或什么更改了凭据。但是现在你至少有一种编程语言可以帮助你。

于 2020-01-24T18:09:18.417 回答