robotframework python log コンソール 表示

Python
本ページはプロモーションが含まれています

はじめに

robotframeworkはテストの自動化に便利です。
結果がhtmlやコンソールに表示されますし、見やすいです。

更にPythonのライブラリや自作の関数やクラスをrobotframeworkから呼び出すことも可能です。
robotframeworkにないライブラリなどはpythonの物を使えば大抵の事は出来るかと。

今回は外部から呼び出した自作のpythonで作ったソースコード内で表示したログメッセージをrobotrameworkのコンソールで表示する方法を調べたことがあったのでその時のメモです。

サンプルソース

サンプルではmy_library.pyという自作の関数をlog_to_console_from_python.robotというrobotframework上から呼び出すというものです。

python内でログの表示を行いますが、pythonのprintではrobotframeworkのコンソール上では表示されない事に注意です。
表示にはlogger.consoleを使います。

それぞれのサンプルコードです。
どちらも同じフォルダに配置してください。

pythonのサンプルです。

# my_library
from robot.api import logger

def my_library():
    print("my_library呼び出し その1")
    logger.console("『my_library呼び出し その2』")

robotframeworkのサンプルです。

*** Settings ***
Library    my_library.py

*** Test Cases ***
my_libraryの呼び出し
    my_library

robotframeworkのファイルを実行すると

==============================================================================
Log To Console From Python                                                    
==============================================================================
my_libraryの呼び出し                                                  
『my_library呼び出し その2』
my_libraryの呼び出し                                                  | PASS |
------------------------------------------------------------------------------
Log To Console From Python                                            | PASS |
1 test, 1 passed, 0 failed

==============================================================================

とpython上で出力したメッセージがrobotframework上で表示されている事が分かります。

さいごに

今回はpythonソース内で表示させたログをrobotframeworkのコンソールで表示する方法でした。
デバッグでメッセージを表示するときなどに利用できるので便利です。

この記事がお役に立ったのなら嬉しいです。
最後までお読みいただきありがとうございます。

タイトルとURLをコピーしました