Nightmare.js の紹介とインストール

王林
リリース: 2023-09-05 09:13:02
転載
1117 人が閲覧しました

Nightmare.js の紹介とインストール

Nightmare は、Segment が提供する高度な自動化ライブラリです。人間が行うことのできるテキスト入力、クリック、目視検査をすべて実行できるため、スモークテストの自動化に最適です。 Electron を使用してヘッドレス ブラウザとして動作します。この記事では、Nightmare.js と Nightmare.js のインストールについて詳しく説明します。

Nightmare.js の概要

Segment は、洗練されたブラウザ自動化ライブラリである Nightmare を提供します。この悪夢の目標は、ユーザー アクティビティ (例: 移動、入力、クリックなど) をエミュレートし、大量のネストされたコールバックを使用する代わりに、API 経由でいくつかの基本メソッドを公開して、各スクリプト ブロックが同期しているようにすることです。その目的は、API を使用せずに Web サイト全体の操作を自動化することですが、現在ではクロールや UI テストなどに最も一般的に使用されています。

- Nightmareを実行するには、NodeJS 4.x以降が必要です。

Nightmare.jsをインストールする

Web サイトのインターフェイスをテストするために、JavaScript ブラウザ自動化ライブラリである Nightmare.js を試しました。

Nightmare を PC で使用するのは、Cloud 9 で使用するよりも簡単です。以下にセットアップと起動手順を示します。

ステップ 1 Node.js をダウンロードする

JavaScript は通常、ブラウザ内で実行されます。 Node.js は、サーバー、端末、またはその他のハードウェアで使用できる JavaScript のバリエーションです。 Nightmare スクリプトの作成と実行が簡単になります。

Node.jsのダウンロードリンク

リーリー

ステップ 2 NPM をダウンロードする

Node Package Manager (npm) を使用して Nightmare ライブラリをセットアップできます。 Nightmare の依存関係はすべてインストールされ、npm を使用してインストールすると、それもインストールされます。

NPM インストールリンク

リーリー

ステップ 3 Nightmare.js ライブラリをインストールする

コマンドを使用する

リーリー

Nightmare.js ライブラリを Node js Playground にインストールする方法を説明しました。次に、nightmare の基本をいくつか見てから、nightmare オブジェクトに進みます。

nightmare の基本構文は -

です。 リーリー

上記のコードでは、Node js の require() メソッドを使用してコード内に「Nightmare」をインポートし、それを変数に保存しました。後でこの変数を使用して、いくつかのオブジェクトと括弧内の値を定義します。新しい変数に再度保存します。

nightmare.js の基本的なコード構造のいくつかはすでに理解しました。次に、Nightmare.js のオブジェクトに移りましょう -

Nightmare.js オブジェクト

Nightmare.js は、Web をナビゲートして便利なものを提供できる新しいオブジェクトを作成するため、ここでさらに仕様を追加するために、より良い Web サーフィンを行うのに役立つ Nightmare オブジェクトを用意しています。その一部を見てみましょう。

待機タイムアウト

このオブジェクトのデフォルト時間は 30 秒です。ユーザーは必要に応じて時間を定義することもできます。関数 ".wati()" が設定された時間範囲内で true 値を返せない場合、例外がスローされます。

リーリー

上記のコードでは、まず Nightmare をシステムにインポートし、そのオブジェクトを作成します。変数では、オブジェクト「waitTimeout」に値 2000 ミリ秒を指定します。

タイムアウトに移動

このオブジェクトのデフォルト時間は 30 秒です。ユーザーは必要に応じて時間を定義することもできます。関数 ".goto()" が指定または設定された時間範囲内にロードできない場合は、例外がスローされます。

リーリー

上記のコードでは、まず Nightmare をシステムにインポートし、そのオブジェクトを作成します。変数では、オブジェクト「gotoTimeout」に値 2000 ミリ秒を指定します。

読み込みタイムアウト

このオブジェクトのデフォルト時間は無限秒です。ユーザーは必要に応じて時間を定義し、クリックやその他の操作によってページ遷移が発生しない場合、または指定された時間内に移動が完了しない場合に、Nightmare を強制的に終了させることもできます。 。

リーリー

上記のコードでは、まず Nightmare をシステムにインポートし、そのオブジェクトを作成します。変数では、オブジェクト「loadTimeout」に値 2000 ミリ秒を指定します。

実行タイムアウト

このオブジェクトのデフォルト時間は 30 秒です。ユーザーは必要に応じて時間を定義し、メソッド ".evaluate" のステートメントが完了するまでの最大待機時間を表示することもできます。

リーリー

上記のコードでは、まず Nightmare をシステムにインポートし、そのオブジェクトを作成します。変数では、オブジェクト「executionTimeout」に値 2000 ミリ秒を指定します。

###パス###

Electron は多くのデフォルトのシステム パスを定義します。これらのパスは、Nightmare のパス オブジェクトを使用してオーバーライドできます。これは、次のコードで実行できます -

リーリー

上記のコードでは、まず Nightmare をシステムにインポートし、そのオブジェクトを作成します。変数には、電子の経路が定義されるオブジェクトの経路を指定します。

電子パス

これらは、さまざまなバージョンの Electron をテストするのに非常に役立ち、Electron バイナリへの事前構築されたパスです。これらのパスは、Nightmare のパス オブジェクトを使用してオーバーライドできます。電子の経路がどのように定義されるかを示すコードを見てみましょう -

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 作为无头浏览器运行。

以上がNightmare.js の紹介とインストールの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート