Inhaltsverzeichnis
Nightmare.js-Einführung
Installieren Sie Nightmare.js
Schritt 1: Laden Sie Node.js herunter
Schritt 2 NPM herunterladen
Schritt 3: Installieren Sie die Nightmare.js-Bibliothek
Objekt von Nightmare.js
Wartezeitüberschreitung
GEHE ZU TIMEOUT
开关
结论
Heim Web-Frontend js-Tutorial Einführung und Installation von Nightmare.js

Einführung und Installation von Nightmare.js

Sep 05, 2023 am 09:13 AM

Einführung und Installation von Nightmare.js

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.

Nightmare.js-Einführung

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.

Installieren Sie Nightmare.js

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.

Schritt 1: Laden Sie Node.js herunter

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/ 
Nach dem Login kopieren

Schritt 2 NPM herunterladen

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/
Nach dem Login kopieren

Schritt 3: Installieren Sie die Nightmare.js-Bibliothek

Befehle verwenden

npm install nightmare 
Nach dem Login kopieren

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})  
Nach dem Login kopieren

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 -

Objekt von Nightmare.js

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 –

Wartezeitüberschreitung

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
}) 
Nach dem Login kopieren

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.

GEHE ZU TIMEOUT

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
})
Nach dem Login kopieren

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 „gotoTimeout“ mit dem Wert 2000 Millisekunden.

Ladezeitüberschreitung

Dieses Objekt hat eine Standardzeit von unendlichen Sekunden. Der Benutzer kann bei Bedarf auch eine bestimmte Zeit festlegen und Nightmare zum Verlassen zwingen, wenn der Seitenübergang aufgrund von Vorgängen wie Klicks nicht erfolgt oder die Bewegung nicht innerhalb der angegebenen Zeit abgeschlossen wird.

const Nightmare = require('nightmare')
const nightmare = Nightmare({
   loadTimeout: 2000 // in milliseconds
})
Nach dem Login kopieren

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 „loadTimeout“ mit dem Wert 2000 Millisekunden.

Ausführungszeitüberschreitung

Dieses Objekt hat eine Standardzeit von 30 Sekunden. Der Benutzer kann auch eine bestimmte Zeit nach Bedarf festlegen und die maximale Zeit anzeigen, die auf den Abschluss der Anweisung der Methode „.evaluate“ gewartet werden soll.

const Nightmare = require('nightmare')
const nightmare = Nightmare({
   executionTimeout: 2000 // in milliseconds
})
Nach dem Login kopieren

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 „executionTimeout“ mit dem Wert 2000 Millisekunden.

Pfad

Electronics definiert viele Standardsystempfade. Diese Pfade können mithilfe des Pfadobjekts von Nightmare überschrieben werden, was mit dem folgenden Code möglich ist:

const Nightmare = require('nightmare')
const nightmare = Nightmare({
   paths: {
      userData: ‘/user/data’
   }
})
Nach dem Login kopieren

Im obigen Code haben wir zuerst den Albtraum in unser System importiert und dann ein Objekt dafür erstellt. In den Variablen geben wir den Objektpfad an, in dem der Elektronenpfad definiert ist.

Elektronischer Pfad

Diese sind sehr hilfreich zum Testen verschiedener Versionen von Electron und es handelt sich dabei um vorgefertigte Pfade zu den Electron-Binärdateien. Diese Pfade können mithilfe des Pfadobjekts von Nightmare überschrieben werden. Schauen wir uns den Code zur Definition von Elektronenpfaden an -

const Nightmare = require('nightmare')
const nightmare = Nightmare({
   electronPath: require('electron')
})
Nach dem Login kopieren

在上面的代码中,首先,我们将噩梦导入到我们的系统中,然后为它创建了一个对象。在变量中,我们提供了对象 electroPath ,其键值将使用 required 关键字导入。

开关

Electron 还支持 google 命令行支持的开关。此类别中有多种开关。让我们转到代码以获取有关如何在 nights.js 对象中使用开关对象的信息 -

const Nightmare = require('nightmare')
const nightmare = Nightmare({
   switches: {
      'key1' : 'value1',
      'key2' : 'value2',
   }
})
Nach dem Login kopieren

在上面的代码中,首先,我们将噩梦导入到我们的系统中,然后为它创建了一个对象。在变量中,我们提供了对象开关,并在其中定义了两个键值对。

结论

在这篇文章中,我们详细学习了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!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie erstelle ich meine eigenen JavaScript -Bibliotheken? Wie erstelle ich meine eigenen JavaScript -Bibliotheken? Mar 18, 2025 pm 03:12 PM

In Artikel werden JavaScript -Bibliotheken erstellt, veröffentlicht und aufrechterhalten und konzentriert sich auf Planung, Entwicklung, Testen, Dokumentation und Werbestrategien.

Wie optimiere ich den JavaScript -Code für die Leistung im Browser? Wie optimiere ich den JavaScript -Code für die Leistung im Browser? Mar 18, 2025 pm 03:14 PM

In dem Artikel werden Strategien zur Optimierung der JavaScript -Leistung in Browsern erörtert, wobei der Schwerpunkt auf die Reduzierung der Ausführungszeit und die Minimierung der Auswirkungen auf die Lastgeschwindigkeit der Seite wird.

Was soll ich tun, wenn ich auf den Codendruck auf Kleidungsstücke für Front-End-Thermalpapier-Quittungen stoße? Was soll ich tun, wenn ich auf den Codendruck auf Kleidungsstücke für Front-End-Thermalpapier-Quittungen stoße? Apr 04, 2025 pm 02:42 PM

Häufig gestellte Fragen und Lösungen für das Ticket-Ticket-Ticket-Ticket in Front-End im Front-End-Entwicklungsdruck ist der Ticketdruck eine häufige Voraussetzung. Viele Entwickler implementieren jedoch ...

Wie debugge ich den JavaScript -Code effektiv mithilfe von Browser -Entwickler -Tools? Wie debugge ich den JavaScript -Code effektiv mithilfe von Browser -Entwickler -Tools? Mar 18, 2025 pm 03:16 PM

In dem Artikel werden effektives JavaScript -Debuggen mithilfe von Browser -Entwickler -Tools, der Schwerpunkt auf dem Festlegen von Haltepunkten, der Konsole und der Analyse der Leistung erörtert.

Wer bekommt mehr Python oder JavaScript bezahlt? Wer bekommt mehr Python oder JavaScript bezahlt? Apr 04, 2025 am 12:09 AM

Es gibt kein absolutes Gehalt für Python- und JavaScript -Entwickler, je nach Fähigkeiten und Branchenbedürfnissen. 1. Python kann mehr in Datenwissenschaft und maschinellem Lernen bezahlt werden. 2. JavaScript hat eine große Nachfrage in der Entwicklung von Front-End- und Full-Stack-Entwicklung, und sein Gehalt ist auch beträchtlich. 3. Einflussfaktoren umfassen Erfahrung, geografische Standort, Unternehmensgröße und spezifische Fähigkeiten.

Wie verwende ich Quellkarten zum Debuggen, um den JavaScript -Code zu debuggen? Wie verwende ich Quellkarten zum Debuggen, um den JavaScript -Code zu debuggen? Mar 18, 2025 pm 03:17 PM

In dem Artikel wird erläutert, wie Quellkarten zum Debuggen von JavaScript verwendet werden, indem er auf den ursprünglichen Code zurückgegeben wird. Es wird erläutert, dass Quellenkarten aktiviert, Breakpoints eingestellt und Tools wie Chrome Devtools und WebPack verwendet werden.

Der Unterschied in der Konsole.log -Ausgabeergebnis: Warum unterscheiden sich die beiden Anrufe? Der Unterschied in der Konsole.log -Ausgabeergebnis: Warum unterscheiden sich die beiden Anrufe? Apr 04, 2025 pm 05:12 PM

Eingehende Diskussion der Ursachen des Unterschieds in der Konsole.log-Ausgabe. In diesem Artikel wird die Unterschiede in den Ausgabeergebnissen der Konsolenfunktion in einem Code analysiert und die Gründe dafür erläutert. � ...

TypeScript für Anfänger, Teil 2: Grundlegende Datentypen TypeScript für Anfänger, Teil 2: Grundlegende Datentypen Mar 19, 2025 am 09:10 AM

Sobald Sie das Typscript-Tutorial für Einstiegsklasse gemeistert haben, sollten Sie in der Lage sein, Ihren eigenen Code in eine IDE zu schreiben, die TypeScript unterstützt und in JavaScript zusammenfasst. Dieses Tutorial wird in verschiedenen Datentypen in TypeScript eingetaucht. JavaScript hat sieben Datentypen: NULL, UNDEFINED, BOOLEAN, NUMMER, STRING, SYMBOL (durch ES6 eingeführt) und Objekt. TypeScript definiert mehr Typen auf dieser Grundlage, und dieses Tutorial wird alle ausführlich behandelt. Null -Datentyp Wie JavaScript, null in TypeScript

See all articles