1

私のpythonベースのテストで(一般的に)何が起こっているかを次に示します。

==============================================================================
***Settings***

Variables       variable_file.py
Library         library.py

***Test Cases***

A Test Case
      myTest      ${some string}       [I want to pass an object here]

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

最後に、変数ファイル内で定義された実際のクラス オブジェクトを渡したいと思います。文字列やリスト以外のものを渡す方法を見つけることなく、私は遠くまで調べました。誰も方法を知っていますか?

4

2 に答える 2

2

デフォルトでは、${variable} は文字列ですが、オブジェクトを含めることもできます。そして、引数としてキーワードに渡すことができます。

次のような簡単な例を見てみましょう。

${mydict} =  Create Dictionary  a  1  b  2

=> ${mydict} = {'a': '1', 'b': '2'}

そして、オブジェクトを引数としてキーワードを呼び出すことができます。例えば:

Dictionary Should Contain Key  ${mydict}  a

私はそのようなものを使用して、JSON を送信する REST API をテストしています。JSON オブジェクトを Robot 変数に格納し、dict の内容を調べて結果を確認します。ブログ投稿で少し説明しました。

于 2013-06-20T08:05:10.470 に答える
1

ユーザーガイドに記載されているように、変数ファイルでオブジェクト変数をインスタンス化できます これは一般的な例です

変数ファイル:

#var_file.py:
class foo(object):
    a = "foo"
    b = "bar"

MY_VAR = foo()
MY_SECOND_VAR = foo

テスト ケース ファイル:

#var_file.txt
*** Test cases ***
log variables
    log    ${MY VAR.a}
    log    ${MY VAR.b}

次を使用して実行します。

pybot -V var_file.py var_file.txt
于 2013-08-16T11:19:33.993 に答える