Ошибка: this.runnable не является функцией - PullRequest
0 голосов
/ 29 июня 2018

Когда я пытаюсь запустить свои тесты транспортира, окно браузера запускается и через пару секунд закрывается без каких-либо действий с ним. Консоль показывает ошибку

1) Mail suite Send email
  - Failed: this.runnable is not a function
  - Failed: this.runnable is not a function

Executed 1 of 1 spec (1 FAILED) in 0.074 sec.
[08:01:26] I/launcher - 0 instance(s) of WebDriver still running
[08:01:26] I/launcher - chrome #01 failed 1 test(s)
[08:01:26] I/launcher - overall: 1 failed spec(s)
[08:01:26] E/launcher - Process exited with error code 1
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! protractor-example@1.0.0 e2e: `protractor protractor.conf.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the protractor-example@1.0.0 e2e script.
npm ERR! This is probably not a problem with npm. There is likely additional 
logging output above.

Вот мои "spec.ts"

import {LoginPage} from '../page-objects/pages/login/login.po';
import {LoginPageHelper} from '../page-objects/pages/login/login-page.helper';
import {browser, By, element, ExpectedConditions} from 'protractor';
import {beforeEach, describe, it} from 'selenium-webdriver/testing';

describe('Mail suite', () => {
let loginPageHelper: LoginPageHelper;

beforeEach(() => {
    loginPageHelper = new LoginPageHelper();
});

it('Send email', async () => {
    const user1 = browser.params.user1;
    await loginPageHelper.goToPage();
    await LoginPage.username.sendKeys(user1.username);
    await element(By.id('identifierNext')).click();
    await browser.wait(ExpectedConditions.visibilityOf(LoginPage.password));
    await LoginPage.password.sendKeys(user1.password);
});
});

Пожалуйста, помогите мне отладить эту ошибку. Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 29 июня 2018

Ааа, я наконец понял это. Именно эта строка в моем "spec.js" вызывает вышеуказанную ошибку

import {beforeEach, describe, it} from 'selenium-webdriver/testing';

Как только я использовал beforeEach, веб-шторм выдал предупреждение. Когда я попытался использовать автоматическое предложение веб-шторма, он попросил сделать «Alt + Enter». И он импортировал эту строку автоматически.

Удаление этой строки решило проблему.

0 голосов
/ 29 июня 2018

что-то определено в

protractor.conf.js

функция this.runnable? Может быть, вы хотите определить это

var runnable

вместо

this.runnable
...