12

これに関連する多くの同様の質問を見つけましたが、探している特定の回答ではありません。実際、私の要件は少し違うので、次の問題を投稿することになります。

Rest APIを自動化したいのですが、同じケースで 2 つのオプションがありました。1つ目はRest Assuredで、2つ目はPlay Frameworkです。

たとえば、この RestAPI をテストするには:

http://servername:9000/dbs/all/list/m1/p1/sch1

(↑ これにより xml 応答が得られます)

だから、私はでコードを書いて、Java with Rest assured正常に動作しています。Mavenと統合できるように、これをプロジェクトと統合しJenkinsます。サンプルコード:

   import com.jayway.restassured
    public class TestNGSimpleTest2 {

        @Test
        public void testApi() {
                expect().
                statusCode(200).
                body("Status", equalTo("Su22ccess")).
                when().
                get("http://localhost:9000/dbs/all/list/m1/p1/sch1");

        }

だから私の最初の質問は:

  1. 使用するのに最適なツールであると安心できますか?
  2. Play フレームワークの方が優れていますか?
  3. RestAPIをテストするために、Jmeter、RightAPIなどの他の多くのツールを見つけました。しかし、これは自動化できるとは思いません。私は正しいですか?
4

3 に答える 3

4

投稿した RestAssured コードは、基本的なケースでは問題なく機能します。次のような場合、必ずしも「適切なツール」とは限りません。

  • 新しいテスト ケースを継続的に追加し、多くのリソースを持っていない
  • 整形式のエラー メッセージを含むアラートを伝達する (特に Slack や GitHub などの場所に)
  • 誤検知を減らす
  • モニタリングに同じテストを再利用する

これらの機能の構築には時間とリソースが必要であり、チームの規模によっては、適切な呼び出しである場合とそうでない場合があります。

あなたが投稿した商用ソリューションの中には、これらの問題のいくつかを解決できるものがあります。

Assertibleは、直接説明したワークフローをサポートするコードレス ソリューションです: https://assertible.com/blog/automated-api-testing-with-jenkins

于 2017-05-18T18:57:30.813 に答える