変換関数をスクリプトに追加する場合、適切な構文を使用する必要があります。そうしないと、スクリプトは正しく実行されません。 このトピックで説明するように、機能表記を使用してすべての変換関数を参照できます。
address
という属性にgeotagAddress
関数が適用されます:
geotagAddress(address)
<attribute>.<function>()
toString
関数を使用して、quantity
という属性を文字列に変換します:
quantity.toString()
注意:
ドット表記は、元のGroovy関数にのみ使用できます。 BDD固有の変換関数の場合、機能表記法を使用する必要があります。関数チェーン
関数チェーンにより、単一の文の属性に複数の関数を適用できます。 関数を連鎖させるには、ある関数に属性を渡してから、その関数を別の関数に渡します。 最も内側の関数(属性をパラメータとして受け取る関数)が最初に評価され、最も外側の関数が最後に評価されます。
// Performs two transformations on a single attribute using one line of code: toUpperCase(geotagIPAddressGetCity(IP_address))
// The same two transformations as above, without chaining. // 'city_name' is a temporary variable that stores the output of geotagIPAddressGetCity() def city_name = geotagIPAddressGetCity(IP_address) toUpperCase(city_name)
例に示すように、関数チェーンによりコードが明確になり、読みやすくなります。 さらに、2番目の例のcity_name
のように、プレースホルダー変数を含める必要はなく、コードの間違いを回避できます。