2017-11-01 6 views
1

私は、アプリケーションに必要なすべてのURLを持っているjavaクラスを持っています。私はこの機能ファイルにアクセスしたい。 getメソッドを作成することでアクセスできることはわかっています。空手の機能ファイルのjavaクラスの静的変数の値を直接取得する方法

* def Config = Java.type('App.Config') 
* def stageEndPoint = Config.getStageEndPoint() 

直接入手できますか?

答えて

1

を次のように、あなたのテストでこのURLを使用することができますあなたができるはずである空手-config.jsのファイルを書き込むことができますkarate-config.jsの既存のJavaクラスを使用して、機能ファイルが少し簡単になります。たとえば:

function() { 
    var Config = Java.type('App.Config'); 
    return { 
    stageEndPoint: Config.getStageEndPoint(), 
    someOtherEndPoint: Config.getSomeOtherEndPoint() 
    }; 
} 

次に、あなたの機能に:

* url stageEndPoint 

(編集):

function() { 
    return { 
    Config: Java.type('App.Config') 
    }; 
} 

そして:まあ、でもこれは、明らかに十分ではなかったので、ここでもう一つのアイデアです:

* url Config.getStageEndPoint() 
+0

これは良いです。しかし、私は変数にアクセスするために余分なgetメソッドを作成することをスキップしようとしています。私はそれに直接アクセスしたいです。同様に - var url = Config.stgEndPoint; –

+0

@virendrachaudharyよく、私はもう1つのオプションで答えを編集しました。それはどうやって聞こえる? –

+0

私はまだ十分にはっきりしていないように見えます。私のポイントは、静的変数の値を取得するための特別なメソッドを作成することではありません。それは単一変数を得ることではありません。最終的な静的変数を持つ多くのクラスがあります。私たちはgetterメソッドがjavaでは必要ないことを知っています。 App.stageEndPointのように直接アクセスします。私は空手の同様の解決策を探しています。 –

1

あなたはURLのよう

function() { 

    return { 
     baseUrl: 'http://192.168.0.199' 
    } 

} 

の下に与えていると

Background: 
    * url baseUrl 
+0

私はこれを知っています。しかし、私はJavaクラスからそれを読んでほしい –

関連する問題