get setting
名前 | 説明 | タイプ | 修飾子 |
---|---|---|---|
name | 既存のビルトイン設定またはユーザー定義設定の名前です。 | Value Set | case sensitive, ignore blank space, etc. |
type | この設定のタイプです。 許容値:
| Value Set | built-in, user defined |
variable | (任意)返された値を受け取る変数の名前です。 | String | なし |
default | (任意)指定された設定に値がない場合に変数を設定する値(これはユーザー定義設定にのみ適用されます。詳細は を参照してください) | String | なし |
例#1: ユーザー定義設定の読み取りと設定
英語圏を主要な対象としたアプリケーションのテストセットを持っていると仮定します。テストはデフォルトで英語に設定したいが、アプリケーションの他言語バージョンのテスト実行も行いたいと考えています。
これは、「language」という名前でユーザー定義の設定を設定して、テスト実行ダイアログボックスの スタートアップの設定 パネルに設定することで実現できます。任意のテスト実行時に、この設定を選択した言語に設定します。
テストはデフォルトで英語に設定されていますので、テストを英語で実施するために、上記の値を英語に設定するか、単にクリアするオプションがあります。
テストに使用されるさまざまなメッセージやユーザーインターフェースのテキストが多数存在し、言語によって異なる場合、翻訳を格納するために、TestArchitect のアクション
database
が動作できるODBCデータベースを使用しています。
プロジェクトの各テストモジュールは、テスト言語を変数 current_lang に書き込むアクション get setting で初期化されます。引数 default が英語に設定されているため、言語の設定が スタートアップの設定 で行われていない場合、current_lang は自動的に英語に設定されます。
次に、ユーザー定義アクション connect to language database がデータベースに接続し、translations_table と呼ばれる翻訳テーブルを使用します。それに続くアクション execute sql は、指定された言語のテーブルから全ての翻訳を取得するクエリを発行し、それらを1つのデータセット行に書き込みます。
これで必要な全ての翻訳が揃ったので、最初のテストケースではそれらがどのように使用されるかを示します。別のユーザー定義アクション log in user は、誤ったパスワードでAUTにログインしようと試みます。戻り値を受けたら、AUTからのログインが無効であることを示すメッセージを確認します。例えば、テストランがドイツ語で実行された場合を考えると、データセットのフィールド msg_invalid_login には、"ungültiger Benutzername oder Passwort"("無効なユーザー名またはパスワード"のドイツ語版)が含まれ、それが確認されるメッセージです。
アクションライン
name type variable default
get setting language user defined current_lang English
 
connect to language database
 
command result
execute sql # "select * from translations_table where lang = " & "\"" & current_lang & "\"" translations_ds
 
name
disconnect database lang_db
uname pword
log in user john bad password
 
window control value
check car rental message message # msg_invalid_login
例#2: ビルトイン設定の読み取ります
アクション get setting は、テスト手順がビルトイン設定の値を判断し、それに応じてアクションを実行できるようにします。例えば、テストが異なるブラウザタイプによって異なる方法で処理されるHTML要素と対話する必要がある場合、どのブラウザと対話しているかを知ることは役立ちます。テストは、use browser 設定の現在の状態を読み取ることでこれを判断できます。
HTML5 input要素のtype属性がcolorの場合、次のような例が挙げられます:
<input type="color">
一方、Internet Explorer では、同じ要素と属性の組み合わせは単なるテキストボックスとしてレンダリングされ、ユーザーは所望の色の16進RGB値を入力する必要があります:
window intake で、この要素/属性の組み合わせに対してTestArchitect が生成するTAクラスは、ホストブラウザに依存します。そのため、このコントロール用にインタフェースエンティティ内に2つの異なるインタフェース要素を持ちたいかもしれません。1つは Chrome と Firefox 向けの正しいTAクラスを持ち、もう1つはIE向けのTAクラスを持ちます。さらに、テスト手順は各種のコントロールと異なる方法で対話する必要があります。
以下の例では、use browser 設定がアクション get settingで変数 browser に読み込まれます。この変数は
if
構造内で使用され、どのインタフェース要素を使用するかを判断します。また、ユーザー定義アクション select color も、browser in use を読み取って、コントロールと対話するための正しい一連のシステムレベルのアクションラインにブランチするかもしれません。アクションライン
name type variable default
get setting use browser built-in browser in use
location window handle
navigate www.paintonline.com
 
condition
if # browser in use = "Chrome" or browser in use = "Firefox"
 
name value
global variable colorpick control chrome colorpicker
 
condition
else if # browser in use = "Internet Explorer"
 
name value
global variable colorpick control ie colorpicker
 
end if
 
window control color
select color paint online # colorpick control dark red
- 引数 default:
- Built-in setting: ビルトイン設定については、引数 default の値は無効であり、TestArchitect は全てのビルトイン設定に常に空でない値があるというルールを遵守します。
- User-defined setting: 明示的に値が指定されていない場合、テスト実行ダイアログボックス(またはコマンドラインまたはバッチ実行の場合の/startupsettingsパラメータ)で引数 default の値が変数に割り当てられます。この方法で、個々のテストモジュールまたはユーザー定義アクションが、実質的に特定の設定の値を決定することができます。
- アクション get setting が提供する同様の機能は、getsetting 関数からも利用できます。また、ユーザー定義のスクリプトを書いている場合は、GetSettingメソッドからも利用できます。