Nightmare ist eine erweiterte Automatisierungsbibliothek von Segment. Es ist eine gute Wahl für die Automatisierung von Rauchtests, da es alle Texteingaben, Klicks und visuellen Inspektionen durchführen kann, die ein Mensch kann. Es läuft als Headless-Browser mit Electron. In diesem Artikel werden wir Nightmare.js und die Installation von Nightmare.js im Detail besprechen.
Segment bietet Nightmare, eine hochentwickelte Browser-Automatisierungsbibliothek. Das Ziel dieses Albtraums besteht darin, Benutzeraktivitäten zu emulieren (z. B. „Gehe zu“, „Eingeben“, „Klicken“ usw.) und anstatt Unmengen verschachtelter Rückrufe zu verwenden, ein paar grundlegende Methoden über die API verfügbar zu machen, damit sich jeder Skriptblock synchron anfühlt. Obwohl sein Zweck darin besteht, Vorgänge auf Websites ohne API zu automatisieren, wird es heute am häufigsten für Crawling, UI-Tests usw. verwendet.
HINWEIS- Zum Ausführen von Nightmare ist NodeJS 4.x oder höher erforderlich.
Um die Website-Oberfläche zu testen, haben wir Nightmare.js ausprobiert, eine JavaScript-Browser-Automatisierungsbibliothek.
Die Verwendung von Nightmare auf dem PC ist einfacher als die Verwendung von Cloud 9. Nachfolgend finden Sie Anweisungen zur Einrichtung und Inbetriebnahme.
JavaScript läuft normalerweise im Browser. Node.js ist eine Variante von JavaScript, die auf Servern, Terminals oder anderer Hardware verwendet werden kann. Es erleichtert das Erstellen und Ausführen von Nightmare-Skripten.
Node.js-Download-Link
https://nodejs.org/en/download/
Sie können die Nightmare-Bibliothek mit dem Node Package Manager (npm) einrichten. Alle Abhängigkeiten von Nightmare werden installiert, und wenn Sie es mit npm installieren, wird es ebenfalls installiert.
NPM-Installationslink
https://nodejs.org/en/
Befehle verwenden
npm install nightmare
Wir haben gesehen, wie man die Nightmare.js-Bibliothek im Node js Playground installiert. Schauen wir uns nun einige Grundlagen von Nightmare an und gehen dann zu Nightmare-Objekten über.
Die grundlegende Syntax von nightmare ist -
const Nightmare = require('nightmare') const nightmare = Nightmare({object : value_of_object})
Im obigen Code haben wir „Nightmare“ mit der require()-Methode von Node js in den Code importiert und es dann in einer Variablen gespeichert, die wir später verwenden, um einige Objekte und Wertspeichervariablen in Klammern zu definieren und in einer neuen zu speichern wieder variabel.
Wir haben uns einige grundlegende Codestrukturen von nightmare.js angesehen, jetzt wenden wir uns den Objekten von Nightmare.js zu -
Da Nightmare.js ein neues Objekt erstellt, das im Web navigieren und nützliche Dinge bereitstellen kann, haben wir, um hier weitere Spezifikationen hinzuzufügen, das Nightmare-Objekt, das uns dabei helfen wird, besser im Internet zu surfen. Schauen wir uns einige davon an –
Die Standardzeit dieses Objekts beträgt 30 Sekunden. Wenn die Funktion „.wati()“ innerhalb des festgelegten Zeitbereichs keinen echten Wert zurückgibt, wird eine Ausnahme ausgelöst.
const Nightmare = require('nightmare') const nightmare = Nightmare({ waitTimeout: 2000 // in milliseconds })
Im obigen Code haben wir zuerst den Albtraum in unser System importiert und dann ein Objekt dafür erstellt. In der Variable versorgen wir das Objekt „waitTimeout“ mit dem Wert 2000 Millisekunden.
Die Standardzeit dieses Objekts beträgt 30 Sekunden. Wenn die Funktion „.goto()“ nicht innerhalb des angegebenen oder festgelegten Zeitbereichs geladen werden kann, wird eine Ausnahme ausgelöst
const Nightmare = require('nightmare') const nightmare = Nightmare({ gotoTimeout: 2000 // in milliseconds })
Ladezeitüberschreitung
const Nightmare = require('nightmare') const nightmare = Nightmare({ loadTimeout: 2000 // in milliseconds })
Ausführungszeitüberschreitung
const Nightmare = require('nightmare') const nightmare = Nightmare({ executionTimeout: 2000 // in milliseconds })
Pfad
const Nightmare = require('nightmare') const nightmare = Nightmare({ paths: { userData: ‘/user/data’ } })
Elektronischer Pfad
const Nightmare = require('nightmare') const nightmare = Nightmare({ electronPath: require('electron') })
在上面的代码中,首先,我们将噩梦导入到我们的系统中,然后为它创建了一个对象。在变量中,我们提供了对象 electroPath ,其键值将使用 required 关键字导入。
Electron 还支持 google 命令行支持的开关。此类别中有多种开关。让我们转到代码以获取有关如何在 nights.js 对象中使用开关对象的信息 -
const Nightmare = require('nightmare') const nightmare = Nightmare({ switches: { 'key1' : 'value1', 'key2' : 'value2', } })
在上面的代码中,首先,我们将噩梦导入到我们的系统中,然后为它创建了一个对象。在变量中,我们提供了对象开关,并在其中定义了两个键值对。
在这篇文章中,我们详细学习了Nightmare.js以及Nightmare.js的安装。 Nightmare是一个由segment提供的高级自动化库。它是烟雾测试自动化的一个不错的选择,因为它可以执行人类可以执行的所有文本输入、单击和目视检查。它使用 Electron 作为无头浏览器运行。
Das obige ist der detaillierte Inhalt vonEinführung und Installation von Nightmare.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!