外部データベースライブラリの操作

SeleniumLibraryをどのように使用できるかを見てきました。Seleniumライブラリの詳細なインストール/インポートについては、「Seleniumライブラリを使用したブラウザの操作」の章で説明しています。

この章では、データベースライブラリと、RobotFrameworkを使用してデータベースに接続してテストする方法について説明します。

RobotFrameworkサイトに移動します https://robotframework.org/ をクリックします Libraries 以下に示すように-

[ライブラリ]をクリックすると、次のような画面にリダイレクトされます-

ライブラリは、標準、外部、その他に分類されます。

この章では、外部ライブラリについて見ていきます。外部をクリックすると、次の画面が表示されます-

RobotFrameworkでサポートされている外部ライブラリのリストが表示されます。ここでは、データベースライブラリ(Python)に焦点を当てます。同じことが上のスクリーンショットで強調表示されています。

データベースライブラリ(Python)をクリックすると、次のスクリーンショットに示すように、インストール手順が一覧表示されている画面にリダイレクトされます。

pipを使用してデータベースライブラリをインストールできます。コマンドは-です。

pip install -U robotframework-databaselibrary

以下に示すように、コマンドラインで上記のコマンドを実行します-

以下に示すように、ライブラリはpythonlibフォルダーに保存されます-

インストールが完了したら、次のステップはプロジェクト内にライブラリをインポートし、それをテストケースで使用することです。

データベースライブラリのインポート

を使用したオープンライド ride.py コマンドラインから、データベースをテストするためのプロジェクトを作成します。

[新しいプロジェクト]をクリックして、プロジェクトに名前を付けます。

[OK]をクリックしてプロジェクトを保存します。

[インポートの追加]の下の[ライブラリ]をクリックします。

以下に示すように、ライブラリの名前をDatabaseLibraryとして入力し、[OK]をクリックします。

保存すると、ライブラリは次のようになります-

MySQLデータベースを使用します。MySQLを使用するには、モジュールをインストールする必要があります。

コマンド

pip install pymysql

次に、作成したプロジェクトの下にテストケースを作成します。

[新しいテストケース]をクリックします-

テストケースの名前を入力し、[OK]をクリックします。

利用可能なcustomersという既存のデータベースを使用します。

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データベースに接続し、テーブルをテストする方法がわかりました。