Я пытаюсь настроить систему автоматизации для тестирования моего углового веб-приложения.Для этого мы используем транспортир с жасмином и огурцом.Я сталкиваюсь с несколькими проблемами: Ниже приведен package.json, и я убедился, что я включил зависимости для cucumber, менеджера веб-драйверов selenium, и я установил protractor-cucumber-framework, используя следующую команду:
npm install --save-dev protractor-cucumber-framework
файл package.json:
{
"name": "taweb",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "ng serve --proxy-config proxy.conf.json",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e",
"test-unit": "ng test"
},
"private": true,
"dependencies": {
"@angular/animations": "^7.0.2",
"@angular/cdk": "^7.0.3",
"@angular/common": "~7.0.0",
"@angular/compiler": "~7.0.0",
"@angular/core": "~7.0.0",
"@angular/forms": "~7.0.0",
"@angular/http": "~7.0.0",
"@angular/platform-browser": "~7.0.0",
"@angular/platform-browser-dynamic": "~7.0.0",
"@angular/router": "~7.0.0",
"core-js": "^2.5.4",
"font-awesome": "^4.7.0",
"ngx-logger": "^3.0.5",
"hammerjs": "^2.0.8",
"primeicons": "^1.0.0",
"primeng": "^6.1.6",
"rxjs": "~6.3.3",
"selenium-webdriver": "^4.0.0-alpha.1",
"zone.js": "~0.8.26",
"webpack": "~4.16.4",
"webpack-config": "~7.5.0",
"har-validator": "~5.1.3"
},
"devDependencies": {
"@angular-devkit/build-angular": "~0.10.0",
"@angular/cli": "~7.0.4",
"@angular/compiler-cli": "~7.0.0",
"@angular/language-service": "~7.0.0",
"@types/jasmine": "~2.8.8",
"@types/jasminewd2": "~2.0.3",
"@types/node": "~8.9.4",
"chai": "^4.1.2",
"chai-as-promised": "^7.1.1",
"codelyzer": "~4.5.0",
"cucumber": "^4.2.1",
"cucumber-html-reporter": "^4.0.3",
"jasmine-core": "~2.99.1",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~3.0.0",
"karma-chrome-launcher": "~2.2.0",
"karma-coverage-istanbul-reporter": "~2.0.1",
"karma-firefox-launcher": "^1.1.0",
"karma-ie-launcher": "^1.0.0",
"karma-jasmine": "~1.1.2",
"karma-jasmine-html-reporter": "^0.2.2",
"protractor": "~5.4.0",
"protractor-beautiful-reporter": "^1.2.3",
"protractor-cucumber-framework": "^6.1.1",
"ts-node": "~7.0.0",
"tslint": "~5.11.0",
"typescript": "~3.1.1"
}
}
Также установлены следующие плагины от транспортира:
-Полная поддержка огурца Огурца
-cucumber-gotostep
Проблемыстолкнулся: 1) Когда я создаю файл объектов "test1.feature" и начинаю добавлять сценарий и щелкаю правой кнопкой мыши, тогда он не дает мне возможность добавить определение шага.Показывает только один параметр, связанный с огурцом, который называется «Определение шага».2) Я не вижу значок огурца для вышеуказанного файла функций.Не уверен, что мне здесь не хватает. Ниже приведен мой config.ts:
import * as path from "path";
import { browser, Config } from "protractor";
import { Reporter } from "../support/reporter";
const jsonReports = process.cwd() + "/reports/json";
export const config: Config = {
seleniumAddress: "http://127.0.0.1:4444/wd/hub",
SELENIUM_PROMISE_MANAGER: false,
baseUrl: "https://www.google.com",
capabilities: {
browserName: "chrome",
},
framework: "custom",
frameworkPath: require.resolve("protractor-cucumber-framework"),
specs: [
//"../../features/*.feature",
"src/Test/features/*.feature",
],
onPrepare: () => {
browser.ignoreSynchronization = true;
browser.manage().window().maximize();
Reporter.createDirectory(jsonReports);
},
cucumberOpts: {
compiler: "ts:ts-node/register",
format: "json:./reports/json/cucumber_report.json",
//require: ["../../typeScript/stepdefinitions/*.js", "../../typeScript/support/*.js"],
require: ["src/Test/steps/*.ts", "src/Test/support/*.ts"],
strict: true,
tags: "@CucumberScenario or @ProtractorScenario or @TypeScriptScenario or @OutlineScenario",
},
onComplete: () => {
Reporter.createHTMLReport();
},
};
3) Когда я пытаюсь запустить вышеуказанный файл объектов, используя node_modules.bin \ cucumber-js "Test1.feature", он показываетниже:
0 scenarios
0 steps
0m00.000s
4) Также я не могу увидеть файлы jar диспетчера веб-драйверов в расположении ниже: Когда я запускаю команды:
node_modules\.bin\webdriver-manager update
node_modules\.bin\webdriver-manager start
Выдает ошибку как
events.js:167
throw er; // Unhandled 'error' event
^
Error: connect ETIMEDOUT 172.217.7.208:443
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1113:14)
Emitted 'error' event at:
at Request.onRequestError (..\..\node_modules\request\request.js:881:8)
at ClientRequest.emit (events.js:187:15)
at TLSSocket.socketErrorListener (_http_client.js:391:9)
at TLSSocket.emit (events.js:182:13)
at emitErrorNT (internal/streams/destroy.js:82:8)
at emitErrorAndCloseNT (internal/streams/destroy.js:50:3)
at process._tickCallback (internal/process/next_tick.js:63:19)
Как я могу добавить файлы jar, связанные с менеджером webdriver, как часть моего пакета npm, чтобы я мог обновить и запустить его?
Любая помощь очень ценится. Спасибо!