Nightmare は、Segment が提供する高度な自動化ライブラリです。人間が行うことのできるテキスト入力、クリック、目視検査をすべて実行できるため、スモークテストの自動化に最適です。 Electron を使用してヘッドレス ブラウザとして動作します。この記事では、Nightmare.js と Nightmare.js のインストールについて詳しく説明します。
Segment は、洗練されたブラウザ自動化ライブラリである Nightmare を提供します。この悪夢の目標は、ユーザー アクティビティ (例: 移動、入力、クリックなど) をエミュレートし、大量のネストされたコールバックを使用する代わりに、API 経由でいくつかの基本メソッドを公開して、各スクリプト ブロックが同期しているようにすることです。その目的は、API を使用せずに Web サイト全体の操作を自動化することですが、現在ではクロールや UI テストなどに最も一般的に使用されています。
注 - Nightmareを実行するには、NodeJS 4.x以降が必要です。
Web サイトのインターフェイスをテストするために、JavaScript ブラウザ自動化ライブラリである Nightmare.js を試しました。
Nightmare を PC で使用するのは、Cloud 9 で使用するよりも簡単です。以下にセットアップと起動手順を示します。
JavaScript は通常、ブラウザ内で実行されます。 Node.js は、サーバー、端末、またはその他のハードウェアで使用できる JavaScript のバリエーションです。 Nightmare スクリプトの作成と実行が簡単になります。
Node.jsのダウンロードリンク
リーリーNode Package Manager (npm) を使用して Nightmare ライブラリをセットアップできます。 Nightmare の依存関係はすべてインストールされ、npm を使用してインストールすると、それもインストールされます。
NPM インストールリンク
リーリーコマンドを使用する
リーリーNightmare.js ライブラリを Node js Playground にインストールする方法を説明しました。次に、nightmare の基本をいくつか見てから、nightmare オブジェクトに進みます。
nightmare の基本構文は -
です。 リーリー上記のコードでは、Node js の require() メソッドを使用してコード内に「Nightmare」をインポートし、それを変数に保存しました。後でこの変数を使用して、いくつかのオブジェクトと括弧内の値を定義します。新しい変数に再度保存します。
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 ミリ秒を指定します。
###パス###上記のコードでは、まず 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 サイトの他の関連記事を参照してください。