В Protractor, как использовать импорт модуля? - PullRequest
0 голосов
/ 08 октября 2019

Я использую Protractor для тестирования неуглового веб-сайта. Я могу использовать Protractor для создания простых вещей, таких как нажатие и ожидание элемента и чтение содержимого элемента (например, текста внутри диапазона и т. Д.). Однако я хочу иметь возможность делать что-то вроде импорта модуля, например, из angular. Это возможно:

import * as XLSX from "xlsx";

Как бы я это сделал?

1 Ответ

0 голосов
/ 08 октября 2019

Итак, во-первых, вы хотите установить свои пакеты с npm, я уверен, что вы уже знаете, как это сделать. NPM - это менеджер пакетов узлов, что означает, что все управляется узлом, поэтому вы будете зависеть от функциональности node.js, и приятно просмотреть документацию

Protractor - это сам пакет и всев противном случае он может быть установлен локально (по вашему рабочему направлению) или глобально (по вашей системе). Когда вы устанавливаете что-либо локально, оно переходит в папку node_modules. ВАЖНО, node_modules - это папка по умолчанию, в которой узел ищет пакеты. Поэтому, если вы используете let module = require(path), ваш путь может быть фактическим (относительный: ./../../module или абсолютный: /Users/user/Documents/module), он также может быть просто именем пакета let module = require("xlsx"). В этом случае узел будет искать пакет xlsx в ближайшей папке node_modules.

Ближайший означает, что ваш проект может иметь несколько node_modules. Рассмотрим эту структуру папок

project-+-folder1
        |
        +-folder2
        |
        +-node_modules
        |
        +-folder3-+-node_modules
                  |
                  +-another-folder-+
                                   |
                                   +-spec.js

Если вы скажете let module = require("xlsx") в вашем spec.js, то узел будет искать пакет xlsx внутри вашего node_modules ПОД folder3, а если он не найден, он будетпереместите один каталог вверх и проверьте внутри папки node_modules UNDER project и т. д. Если ничего не найдено, он попытается найти указанный пакет глобально (вне вашего проекта). Это сделано для того, чтобы уменьшить трудности с относительными путями (./../../..).

Теперь, когда у вас есть основы теории импорта в узле с использованием javascript, вот ответ на ваш вопрос:

после установки пакета вы можете импортировать его, используя require () method

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