说明:登录窗口包含3个主要对象"用户名"(文本框),"密码"(文本框)和"登录" (按钮)
观察:运行测试时,在用户名文本框中输入testtest(即在同一个编辑框中输入密码值)
你可以帮助我解决这个问题,因为它打破了基本的功能,这对我来说是一个自动化的障碍吗?
功能文件:
@login
Feature: Login
Scenario Outline: Login
Given I launch url
Then I enter <username>
Then I enter password <password>
Then I click on login button
Then I verify login screen
Then I click on logOut
Examples:
| username | password |
| test | test |
StepDefinition
Given(/^I launch webapp url$/, function () {
return browser.get('https://example.com');
});
Then(/^I enter (.*)$/, function (username) {
const Login = new loginPage();
return Login.enterUserName(username);
});
Then(/^I enter password (password)$/, function (password) {
const Login = new loginPage();
return Login.enterPassword(password);
console.log('pass');
});
答案 0 :(得分:0)
问题显然来自你的代码。首先,请检查您在函数imports.gi.*
和enterUserName()
中是否使用相同的元素变量。
其次,检查定位器以查找用户名和密码,不会在页面上找到相同的元素。
第三,代码中的问题:enterPassword
应为Then(/^I enter password (password)$/, function (password) {