Robot-framework-working-with-external-database-libraries
外部データベースライブラリの使用
Selenium Libraryをどのように使用できるかを見てきました。 Selenium Libraryの詳細なインストール/インポートについては、_「Selenium Libraryを使用したブラウザの操作」の章で説明しています。
この章では、データベースライブラリと、Robot Frameworkを使用してデータベースを接続およびテストする方法について説明します。
ロボットフレームワークサイトhttps://robotframework.org/にアクセスし、以下に示すように[ライブラリ]をクリックします-
ライブラリをクリックすると、以下に示すように画面にリダイレクトされます-
ライブラリは、標準、外部、およびその他に分類されます。
この章の外部ライブラリを見てみましょう。 外部をクリックすると、次の画面が表示されます-
Robot Frameworkでサポートされている外部ライブラリのリストが表示されます。 ここでは、データベースライブラリ(Python)に注目します。 上のスクリーンショットでも同じことが強調されています。
データベースライブラリ(Python)をクリックすると、次のスクリーンショットに示すように、インストールの指示がリストされている画面にリダイレクトされます-
私たちはpipを使用してデータベースライブラリをインストールすることができ、コマンドは-
pip install -U robotframework-databaselibrary
以下に示すように、コマンドラインで上記のコマンドを実行します-
ライブラリは、以下に示すようにpython libフォルダーに保存されます-
インストールが完了したら、次のステップはプロジェクト内にライブラリをインポートし、テストケースで使用することです。
データベースライブラリのインポート
コマンドラインから ride.py を使用してライドを開き、データベースをテストするためのプロジェクトを作成します。
[新しいプロジェクト]をクリックし、プロジェクトに名前を付けます。
[OK]をクリックしてプロジェクトを保存します。
[インポートの追加]の下の[ライブラリ]をクリックします。
以下に示すように、ライブラリの名前をDatabaseLibraryとして入力し、[OK]をクリックします。
保存すると、ライブラリは次のようになります-
MySQLデータベースを使用します。 MySQLを使用するには、モジュールをインストールする必要があります。
コマンド
pip install pymysql
次に、作成したプロジェクトの下にテストケースを作成します。
[新しいテストケース]をクリックします-
テストケースの名前を入力し、[OK]をクリックします。
顧客と呼ばれる既存のデータベースを使用します。
私たちはphymyadminを使用して顧客データベースを表示します-
customerというテーブルがあり、6行にデータが分散されています。 次に、MySQLデータベースの顧客に接続し、顧客テーブルからデータを取得するテストケースを作成します。
開始する前に、データを保存するために、dbname、dbuser、dbpasswd、dbhost、dbport、queryresultのデータを保持するスカラー変数を作成します。 値で作成された変数は次のとおりです-
データベースに接続するコマンドは-
Connect To Database pymysql ${dbname} ${dbuser}
${dbpasswd} ${dbhost} ${dbport}
以下に示すように、さらにいくつかのテストケースを追加します-
詳細はこちらです-
** *Settings* **
Library DatabaseLibrary
** *Variables* **
${dbname} customers
${dbuser} root
${dbpasswd} admin
${dbhost} localhost
${dbport} 3306
@{queryResults}
** *Test Cases* **
TC1
Connect To Database pymysql ${dbname} ${dbuser}
${dbpasswd} ${dbhost} ${dbport}
Table Must Exist customer
Check If Exists In Database SELECT *FROM customer
@{queryResults} Query SELECT* FROM customer
Log @{queryResults}[0]
データベースに接続し、テーブルcustomerがデータベースに存在するかどうかを確認し、クエリを実行してクエリの詳細を記録しました。
テストケースを実行し、出力を確認します
queryResultsのテーブルからの結果が表示されます。
ログの詳細
TC1の詳細
結論
データベースライブラリのインポート方法とインストールについて見てきました。 Robot FrameworkでMySQLデータベースに接続し、テーブルをテストする方法がわかりました。