send http request

指定されたリソースにHTTPリクエストを送信します。
名前説明タイプ修飾子
uri

リソースを識別するための統一リソース識別子(URI)です。

Stringなし
method

HTTPリクエストメソッド

可能な値: 

  • GET: 特定のリソースからデータを要求します。
  • POST: 処理のためにデータを指定されたリソースに送信します。
  • PUT: 対象リソースの現在の表現を全てアップロードしたコンテンツで置き換えます。
  • DELETE: URIによって指定された対象リソースの現在の表現を全て削除します。
  • PATCH: PATCHメソッドはリソースに部分的な変更を適用するために使用されます。
  • HEAD: HEADメソッドはGETリクエストと同じ応答を要求しますが、応答本文は含みません。
  • OPTIONS: OPTIONSメソッドは対象リソースの通信オプションを説明するために使用されます。

Value SetGET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS
timeout

(任意)サーバーからのHTTPレスポンスを待つ時間です。(単位: 秒)

デフォルト値: 300
Stringなし
variable

(任意)HTTPレスポンスを格納する変数です。

Stringなし
expected code

(任意)レスポンスの期待されるHTTPステータスコードです。(詳細は を参照してください)

Stringなし
response file

テストマシン上のレスポンス本文を保存するファイルのフルパスです

Stringなし
なし
このアクションは、次のプロジェクト項目で使用できます: テストモジュールおよびユーザー定義アクションです。
次の設定はこのアクションに適用可能です:  remove double quotes from cells.
例・ケース1: 与えられたGoogle APIをテストし、受信者にメッセージを送信します

特定のGoogle APIを使用して、以下の情報を持つ受信者にメッセージを送信したいと仮定します: 

  • APIテスト実行: Users.messages: send
  • URI: https://www.googleapis.com/gmail/v1/users/me/messages/send
  • 認証スキーム: OAuth 2.0
  • ヘッダーフィールド: Content-type: application/json
  • リクエストの本文に、次のプロパティをメタデータとして持つUsers.messagesリソースを提供してください。
    表1・リクエスト本文
    プロパティ名詳細
    rawbytesメールメッセージ全体をbase64urlエンコードされた文字列で指定します。
    ヒント: 
    プレーンテキスト文字列をbase64urlエンコードされた文字列に変換するには、Online Base64URL encoder を使用できます。
    • 生の本文コンテンツ: 
                              
                                  To: [email protected]
      Subject: This is a test mail
      &nbsp
      This is a test mail
                              
                          
    • Base64urlエンコードされた本文コンテンツ: 
      VG86IGxvZ2lnZWFyZXBndGVzdDJAZ21haWwuY29tClN1YmplY3Q6IFRoaXMgaXMgdGVzdCBtYWlsCgpUaGlzIGlzIGEgdGVzdCBtYWls
    • JSON形式で宣言されたリクエスト本文{"raw":"base64url encoded string"}
        
        	setting	value			
setting	max show length	1000000			
&nbsp					
	name	value			
local variable	access token	ya29.Ci-fa76X0cjJXa2Lx0RM-fRyAQ6-6pboEX-iuT7PR-yYv6D-Rfbos7bs151wiL-O7w			
local variable	uri	https://www.googleapis.com/gmail/v1/users/me/messages/send			
local variable	tm encoded mail content	VG86IGxvZ2lnZWFyZXBndGVzdDJAZ21haWwuY29tClN1YmplY3Q6IFRoaXMgaXMgdGVzdCBtYWlsCgpUaGlzIGlzIGEgdGVzdCBtYWls			
&nbsp					
	schema	value			
authenticate	oauth 2	#access token			
&nbsp					
create http request					
&nbsp					
	key	value			
add http header	Content-type	application/json			
&nbsp					
	content				
add http body	# "{""raw"":""" & tm encoded mail content & """}"				
&nbsp					
	uri	method	timeout	variable	expected code
send http request	# uri	POST	100	>>response	200
&nbsp					
	response	status	header	body	
parse http response	# response	>>status	>>header	>>body	
        
    
例・ケース2: HTTPベースのWebサービスでSOAPをテストします

特定のGlobalWeatherウェブサービスのAPIを使用して、特定の国名で主要な都市を全て取得したいと仮定します。

  • テスト対象のAPI: GetCitiesByCountry
  • URI: http://www.webservicex.com/globalweather.asmx
  • ヘッダーフィールド: 
    • Content-Type: text/xml
    • SOAPAction: http://www.webserviceX.NET/GetCitiesByCountry
  • リクエスト本文で、オーストラリアの主要都市を全て取得します。
                    
                        <?xml version="1.0" encoding="utf-8"?>
                        <soap:Envelope
                            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                            xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
                            <soap:Body>
                                <GetCitiesByCountry
                                    xmlns="http://www.webserviceX.NET">
                                    <CountryName>Australia</CountryName>
                                </GetCitiesByCountry>
                            </soap:Body>
                        </soap:Envelope>
                    
                
        
        	setting	value			
setting	max show length	1000000			
&nbsp					
	name	value			
local variable	uri	http://www.webservicex.com/globalweather.asmx			
local variable	soap body	&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"&gt;&lt;soap:Body&gt;&lt;GetCitiesByCountryxmlns="http://www.webserviceX.NET"&gt;&lt;CountryName&gt;Australia&lt;/CountryName&gt;&lt;/GetCitiesByCountry&gt;&lt;/soap:Body&gt;&lt;/soap:Envelope&gt;			
&nbsp					
create http request					
&nbsp					
	key	value			
add http header	Content-Type	text/xml			
add http header	SOAPAction	http://www.webserviceX.NET/GetCitiesByCountry			
&nbsp					
	content				
add http body	# soap body				
&nbsp					
	uri	method	timeout	variable	expected code
send http request	# uri	POST	100	>>response	200
&nbsp					
	response	status	header	body	
parse http response	# response	>>status	>>header	>>body	
        
    
例・ケース3: レスポンスの本文を介して添付ファイルを取得します

特定のAPIウェブサービスをテストし、HTTP GETを介して画像を返すことを希望すると仮定します。

  • テストマシン上で返された応答本文を保存するファイルのフルパス: D:\TestData\tmp\testfile.png
        
        create http request				
&nbsp				
	key	value		
add http header	scrFile	D:\TestData\tmp\testfile.png		
&nbsp				
	uri	method	variable	response file
send http request	# api download	GET	>> tm result	D:\TestData\tmp\testfile.png
&nbsp				
	response	status		
parse http response	# tm result	>> tm status		
&nbsp				
	value	expected		
check value	# tm status	200		
&nbsp				
	file			
check file exists	D:\TestData\tmp\testfile.png			
        
    
  • Webサービスをサポート:
    • レストフル(表現状態転送アーキテクチャ)
    • SOAP シンプルオブジェクトアクセスプロトコル)を使用したHTTPベースのWebサービスです。
  • このビルトインアクションを呼び出す前に、create http request を使用してHTTPリクエストをインスタンス化する必要があります。
  • 引数 variable:
    • 引数 variable の変数が宣言されていない場合は、そのアクションはそれをグローバルとして作成します。
    • 引数 variable が空の場合は、 TestArchitect は「_result」という名前のグローバル変数に値を供給します。
  • 引数 expected code:
    • 応答の期待されるHTTPステータスコードを入力してください。例えば、200はリクエストが正常に受信、理解され、受け入れられたことを意味します。HTTPステータスコードの完全なリストについては、ステータスコードの定義を参照してください。
    • この値が提供された場合、TestArchitect は返されたステータスコードを期待されるステータスコードと比較します。これらの2つの値が一致しない場合、自動化エラーが生成されます。
  • 引数 response file: 完全なファイル名と拡張子を宣言する必要があります。それ以外の場合、TestArchitect は警告を報告し、この引数は無視されます。

    注意: 
    • ネットワークリソースとネットワークドライブのマッピングもサポートされています。
    • Windowsの場合: ネットワークドライブのマッピングを指定するには、ユーザーアカウント制御(UAC)を無効にしてください。
  • このビルトインアクションから返される完全な結果を表示するには、 max show length をより高い値に設定してください。ドキュメントの単語を使用して翻訳します。
  • このアクションは修飾子 <ignore> をサポートしています。引数のいずれかの値として文字列 <ignore> が含まれているか、或いはどの引数かが <ignore> に評価される式を含んでいる場合、そのアクションは実行中にスキップされます。

Copyright © 2023 LogiGear Corporation. All rights reserved. LogiGear is a registered trademark, and Action Based Testing and TestArchitect are trademarks of LogiGear Corporation. All other trademarks contained herein are the property of their respective owners.

LogiGear Corporation

1730 S. Amphlett Blvd. Suite 200, San Mateo, CA 94402

Tel: +1(800) 322-0333