Транспортир не распознает функцию - PullRequest
0 голосов
/ 08 июля 2019

При выполнении теста я получаю сообщение об ошибке:

browser.setlocation is not a function. 

На веб-сайте транспортира указана функция browser.setLocation (), почему он не распознает мое использование?

Я пробовал несколько вариантов доступа к URL, т.е. window.location ... но безрезультатно.

it('login', function() {

    browser.setLocation('http://localhost') 
        .waitForElementVisible('wrap')
        .setValue("#username", "username1") 
        .setValue("#password", "Password2"); 

    element(by.id('loginBtn')).click();
    browser.waitForAngular();

});

Тест должен перейти на страницу входа, ввести имя пользователя и пароль и нажать кнопку входа

Ответы [ 2 ]

0 голосов
/ 08 июля 2019

Во-первых, browser.setLocation('http://localhost').waitForElementVisible('wrap')... является недопустимым синтаксисом.

Метод browser.setLocation используется для перехода на другую страницу с помощью на странице навигации.

browser.get('http://angular.github.io/protractor/#/tutorial');
browser.setLocation('api'); // Current url is 'http://angular.github.io/protractor/#/api'

Кроме того, я не знаю, что делают методы waitForElementVisible и setValue, но вам нужно вызвать then для цепочки методов в транспортире.

Если вы хотите перемещаться / открывать страницуиспользуйте метод browser.get(url).

Отработанное решение:

it('login', async () => {
  await browser.get('http://localhost') 
  await browser.wait(ExpectedConditions.visibilityOf($('wrap')), 5000);
  await element(by.id("username")).sendKeys("username1");
  await element(by.id("password")).sendKeys("Password2");
  await element(by.id('loginBtn')).click();
  await browser.waitForAngular();
});
0 голосов
/ 08 июля 2019

Вы можете использовать

browser.get('website link');
element(by.css('locator for username')).sendkeys('test');
element(by.css('locator for password')).sendkeys('test');
element(by.id('locator for login button')).click();

Это простой способ получить доступ к URL и войти в приложение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...