Maison > interface Web > js tutoriel > le corps du texte

Tests d'API simplifiés : KushoAI

Barbara Streisand
Libérer: 2024-10-14 14:26:29
original
510 Les gens l'ont consulté

私たちの祖先は素手ですべての粉砕を行っていたのに、なぜ私たちはグラインダーを使用するのか疑問に思ったことはありますか?テクノロジーの強化により、前世代よりも優れたパフォーマンスを発揮し、日常業務を自動化することで、生活の他の側面により集中できるようになり、さらに多くの発見につながりました。現在のエンジニアが、API 呼び出しで渡されるすべての情報を処理しようとして何時間も座っているのとは異なり、生産性を高め、有用なコードを実際に生み出すためのデータの処理にもっと集中したいと考えています。ユーティリティ。

バックエンド エンジニアとして、私は API エンドポイント サーバーがどのように機能するかを完全に理解していないことの苦労を理解しています。より正確には、API エンドポイント サーバーがどのように機能するかを完全に理解していない (?) ことによるフラストレーションを理解しています。さらに、最適なパフォーマンスを理解し、API エンドポイントのランタイム環境をテストすることは、エンジニアにとって満場一致で 最優先事項 になります。したがって、API をテストする方法によって、最終的に速度、精度、コード内のバグを早期に発見する能力が決まります。

なぜ API をテストする必要があるのか​​を考えると、多くの疑問が頭に浮かぶかもしれません。テスト駆動開発は単純そうに見えますが、開発者が経験するライフサイクルの中でも最も困難で、最も厄介なライフサイクルの 1 つです。最終的には、ルートとハンドラーをテストする方法によって、データ管理ライフサイクルの進め方が決まります。そこでKushoAIの登場です。

正直に言うと、開発サイクルの簡素化に役立つ可能性のある AI エージェントを発見したときに、偶然 KushoAI について考えました。断言します。 「ツールをテストするときのバックエンド エンジニアとしての生活は、かつてないほど簡単になりました。」しかし、KushoAIとは一体何なのでしょうか? 「誇大宣伝されているものの 1 つAI ツール は、存在するだけでしょうか?実際に役に立つのでしょうか? 「はい」の場合、どのようにして?最も重要な疑問は、「KushoAI が他の AI テスト エージェントよりも優れている理由は何なのか」ということです。だからこそ私は、KushoAI がどのように動作し、他のものと違うとなる KushoAI が提供する機能を理解してもらうためにブログを作成することにしました!!

まあ、ドキュメント で定義されているような本っぽい定義に従うと、「KushoAI は、API テスト用の AI エージェントであり、API の徹底的なテスト スイート 数分で – あなたがする必要があるのは、API 情報を入力することだけです。KushoAI が本番環境の API で起こり得る実際のシナリオを把握し、すぐに実行できるテストを作成する間、座って待つだけです。 」

もっと簡単に言うと、入力をエージェントにフィードする方法を決定し、API がどのように機能するかをチェックする詳細かつ個別の

テスト スイート を受け取ります。そうですか?明らかにそうではありません。だからこそ、私はここで時間をかけてこのツールについてブログを書いているのです。 KushoAI がエンジニアに提供する最もユニークな機能を見てみましょう。

API Testing Made Effortless : KushoAI


テストスイートの作成

(KushoAI でテスト スイートを作成するさまざまな方法)

このプラットフォームが提供する最初の最もエキサイティングな機能は、テスト スイートを作成するために API のデータ入力を選択できる多様性です。 KushoAI のドキュメントでは次のように指定されています:

「テスト スイートは、

KushoAI が API 用に生成したテストのコレクションです。大まかに言うと、KushoAI でのテスト生成の仕組みは次のとおりです。

    API 情報を指定して、以下に指定されている形式のいずれかでテスト スイートを作成します。
  • KushoAI は API 情報を調べて、このような API で何が問題になる可能性があるかを判断します。
  • この情報に基づいて、KushoAI は、その API のテスト スイートで利用できるテスト (テストの実行に必要なシナリオと API ペイロードの両方を含む) を作成します。"
KushoAI は、テスト生成のための API 入力を提供するのに役立つ 4 つの

主要 方法を提供します:

    API の詳細を手動で入力します
  1. OpenAPI 仕様をインポートする
  2. Postman コレクションをインポートする
  3. cURL コマンドをコピーして貼り付けます

API Testing Made Effortless : KushoAI

これら

4 の方法のうち、私のお気に入りの方法は常に Postman コレクションをインポートする です。ただし、すべてのメソッドを 1 つずつ簡単に説明したいと思います:

a) API 세부정보를 수동으로 입력

이 방법은 단순성과 이해 용이성으로 인해 플랫폼에서 가장 많이 활용되는 방법 중 하나입니다. 엔드포인트 URL, 헤더, 경로 매개변수, 쿼리 매개변수를 포함하여 API 엔드포인트가 어떻게 설계되었는지 알아야 합니다. 특정 API 요청에 대한 요청 본문. 이 정보를 입력하고 나면 "생성"을 클릭하기만 하면 BOOM!! 단 몇 분만에 API 테스트가 생성됩니다.

이제 일반적인 질문은 다음과 같습니다. 용어에 익숙하지 않은 경우 매개변수가 정확히 무엇입니까? 걱정하지 마세요. KushoAI가 도와드리겠습니다. 플랫폼은 쉽게 이해할 수 있도록 더미 API 예제를 사용하여 이러한 매개변수가 무엇인지에 대한 명확한 설명을 제공합니다. 또한 KushoAI는 Postman에서 컬렉션이 작동하는 방식과 유사하게 API 제품군의 그룹을 생성하는 기능을 제공합니다.

API Testing Made Effortless : KushoAI
API Testing Made Effortless : KushoAI
API Testing Made Effortless : KushoAI
API Testing Made Effortless : KushoAI

b) OpenAPI 사양 가져오기

우리 모두는 살면서 Swagger와 같은 서비스를 API로 사용해 본 적이 있습니다. 이미 Swagger에서 호스팅되는 API가 있는 경우 JSON을 KushoAI로 직접 가져온 다음 내부 파서를 활용하여 API 및 JSON에 나열된 모든 엔드포인트에 대한 모든 정보를 얻는 것이 가장 좋은 아이디어일 것입니다. 또한 KushoAI는 테스트하려는 엔드포인트만 선택할 수 있는 옵션도 제공합니다. 다음 단계는 엔드포인트 URL을 검토하는 것입니다. 그러면 모든 준비가 완료됩니다. 생성을 클릭하고 KushoAI가 모든 작업을 수행하는 동안 사이트로 돌아와 휴식을 취하세요. 이것이 어떻게 작동하는지에 대한 시각적 표현은 아래와 같습니다:

API Testing Made Effortless : KushoAI
API Testing Made Effortless : KushoAI
API Testing Made Effortless : KushoAI

c) Postman Collections에서 가져오기

제가 가장 좋아하는 기능 중 하나는 Postman을 광범위하게 사용하기 때문에 Postman Collections에서 가져오는 기능입니다. 이전에는 필요한 메서드와 매개변수를 사용하여 엔드포인트를 수동으로 입력했습니다. 하지만 제가 정말로 원했던 것은 이러한 API 호출을 테스트에 직접 통합하는 것이었고, 이것이 제가 KushoAI를 알게 된 방법입니다.

간단한 방법은 다음과 같습니다.

  1. Postman 컬렉션을 JSON 파일로 내보냅니다.
  2. JSON 파일을 KushoAI에 업로드하세요.
  3. OpenAPI 사양을 가져올 때와 마찬가지로 테스트를 생성하는 데 필요한 필수 매개변수를 선택하세요.
  4. 인증 토큰, 요청 등과 같은 선택적 매개변수가 있는 경우 다음 팝업에 세부정보를 입력하세요.
  5. "생성"을 클릭한 다음 편안히 앉아 KushoAI가 마법을 발휘하게 하세요.

API Testing Made Effortless : KushoAI
API Testing Made Effortless : KushoAI
API Testing Made Effortless : KushoAI
API Testing Made Effortless : KushoAI

d) cURL 명령을 사용하여 가져오기

KushoAI는 또한 컬 명령을 가져오고 테스트를 직접 생성할 수 있는 옵션도 제공합니다. 테스트가 생성된 실제 적용 가능한 cRUL 명령의 간단한 예는 다음과 같습니다.

curl -v -X POST \
    -F 'hostname=docker' \
    -F 'modelid=5000000002' \
    -F 'sitegroupid=1' \
    -F 'siteid=772' \
    -F 'sitename=Niwot Ridge Forest/LTER NWT1 (US-NR1)' \
    -F 'pft[]=temperate.coniferous' \
    -F 'start=2004/01/01' \
    -F 'end=2004/12/31' \
    -F 'input_met=5000000005' \
    -F 'email=' \
    -F 'notes=' \
    'http://pecan.localhost/pecan/04-runpecan.php'
Copier après la connexion

KushoAI Workbench 및 API 정보

KushoAI는 필터, 개수, 자세한 API 정보 등의 데이터에 대한 통찰력을 제공하여 API 정보에 대한 액세스 및 관리를 매우 간단하게 만듭니다. KushoAI가 API 세부 정보를 처리한 후 실행할 준비가 된 API 컬렉션에 대한 완전한 기능의 테스트 모음을 생성하는 데 일반적으로 몇 분도 걸리지 않습니다.

그러나 생성된 테스트 사례를 특정 시나리오에 맞게 세부 조정해야 하는 경우에는 어떻게 해야 할까요? 걱정하지 마세요. KushoAI는 요청 세부 정보를 수정하고 정확한 요구 사항에 맞게 테스트를 맞춤화할 수 있는 사용하기 쉬운 인터페이스를 제공합니다.

In addition to customization, KushoAI offers parallel computation and API calls, a feature that significantly reduces latency and boosts efficiency. This is one of the most impressive features KushoAI brings to the table, allowing you to test APIs faster and with greater precision.

However, when I say "one of the most impressive," I truly mean it, because KushoAI offers even more. You can automatically generate AI Assertions for each API request using Generative AI, which, in my opinion, is the standout feature of the platform. You can even integrate custom assertions, a feature that I haven’t seen work as quickly or effectively anywhere else.

Below are some examples of requests I processed using KushoAI, demonstrating how its services work. For this, I used a custom endpoint for the WeatherAPI to showcase KushoAI’s capabilities. The ability to easily integrate with your own custom assertions is a game-changer, offering unmatched flexibility and speed. Below are some assertions which were automatically generated using KushoAI's inbuilt Generative AI :

expect(response.response.location.name, "name should exist").to.exist;
expect(response.response.location.name, "name should be a string").to.be.a('string');
expect(response.response.location.region, "region should exist").to.exist;
expect(response.response.forecast.forecastday[0].hour[0].gust_kph, "gust_kph should be a number").to.be.a('number');
expect(response.response.forecast.forecastday[0].hour[0].uv, "uv should exist").to.exist;
expect(response.response.forecast.forecastday[0].hour[0].uv, "uv should be a number").to.be.a('number');
expect(response.statusCode, "statusCode should exist").to.exist;
expect(response.statusCode, "statusCode should be a number").to.be.a('number');
Copier après la connexion

API Testing Made Effortless : KushoAI
API Testing Made Effortless : KushoAI

Workspaces and Collaboration

KushoAI offers a robust Workspaces feature that enables seamless collaboration among users, allowing teams to work together efficiently on API collections. This feature is especially useful for larger teams or projects where multiple individuals need to contribute to the same API testing suite, fostering real-time collaboration and making the development process smoother.

If you're familiar with GitHub, you'll find this functionality quite similar. Just as GitHub allows multiple developers to collaborate on code, KushoAI enables teams to work simultaneously on API collections, share test cases, and address the same issues without stepping on each other’s toes.

This Spectacular feature helps teams stay in sync, reducing bottlenecks and improving productivity. By centralizing the workspace and offering easy access to shared projects, KushoAI streamlines the API testing workflow, making it easier for users to track changes, provide feedback, and enhance the overall quality of their API services.

Whether you're working with a small team or managing a large project with many contributors, KushoAI ensures that collaboration is as efficient and frictionless as possible. With real-time updates and shared access to API collections, it takes teamwork in API testing to a whole new level. You can also manage your API Keys for further integrations and CI automation (which we will discuss a bit later) along with Environment Variables to store your secrets.

KushoAI's Workbench provides a more sophisticated and user-friendly interface than Postman's, allowing for greater flexibility and control during API testing. While Postman is well-known for its simplicity and ease of use, KushoAI goes above and beyond with capabilities such as custom test case generation, real-time modification of API requests, and parallel test execution, all of which greatly speed up the testing process. KushoAI's Workbench is built with Generative AI at its heart, allowing it to automatically develop extensive test cases across numerous scenarios—something Postman often restricts to simple checks like response status and time. Furthermore, KushoAI delivers extensive insights into the data coming via your APIs, allowing users to select and analyse results more accurately.

Integration in your CI/CD Pipelines

KushoAI offers seamless integration with your CI/CD pipelines, providing automated, real-time test generation and execution, without the need for any manual intervention. This integration ensures that every time a new commit is pushed or a change is made, KushoAI automatically runs tests to validate your API’s functionality, performance, and security.

Currently available as part of KushoAI’s Enterprise plan, this feature is designed for organizations that need continuous testing at scale. By incorporating KushoAI into your CI/CD workflow, you can ensure that every API update is thoroughly tested, reducing the likelihood of bugs and security vulnerabilities slipping into production.

KushoAI juga menyokong Tindakan GitHub, menjadikannya mudah untuk menyepadukan ujian API terus ke dalam aliran kerja berasaskan GitHub anda. Ini membolehkan pasukan pembangunan dan ujian anda menangkap isu awal dalam proses pembangunan, meningkatkan kecekapan keseluruhan dan mengurangkan masa yang dihabiskan untuk ujian manual.

Mengautomasikan ujian API anda sebagai sebahagian daripada saluran paip CI/CD bukan sahaja meningkatkan prestasi ujian tetapi juga meningkatkan keselamatan dengan ketara. Setiap perubahan disahkan secara automatik, bermakna anda boleh menggunakan dengan yakin mengetahui API anda telah diuji pada setiap peringkat kitaran hayat pembangunan. Ini menghapuskan potensi risiko keselamatan yang disebabkan oleh kesilapan manusia, menawarkan perlindungan yang boleh dipercayai terhadap pepijat dan kelemahan.

Untuk mendapatkan maklumat yang lebih terperinci atau membincangkan cara penyepaduan CI/CD boleh memberi manfaat kepada organisasi anda, pasukan KushoAI bersedia untuk memberikan perundingan dan sokongan. Di bawah ialah gambaran visual tentang cara penyepaduan berfungsi dalam saluran paip biasa:

Laporan Ujian.

Setelah suite ujian anda selesai, KushoAI akan memberitahu anda apabila proses ujian selesai, membolehkan anda menumpukan pada perkara lain tanpa perlu memantau ujian secara manual. Ini amat berharga untuk pasukan yang mempunyai banyak keutamaan, kerana ia menjamin masa anda digunakan dengan cekap semasa KushoAI melakukan ujian.

Selain makluman, KushoAI menawarkan paparan masa nyata status generasi suite ujian anda. Anda hanya boleh mengikuti kemajuan ujian anda melalui halaman status penjanaan pada tab utama, yang memastikan anda dikemas kini pada setiap peringkat proses. Keterlihatan masa nyata ini penting untuk memastikan tiada ujian yang belum selesai, memberikan anda jaminan bahawa semua API telah diuji sepenuhnya.

Setelah ujian selesai, KushoAI menyediakan pilihan eksport untuk suite dan keputusan ujian. Anda boleh mengeksport laporan ini dalam format 'HTML', yang memberikan gambaran keseluruhan ringkas dan teratur tentang penemuan ujian anda. Laporan ini bukan sahaja menangkap ujian semasa, tetapi ia juga boleh disimpan untuk rujukan masa hadapan, menjadikannya lebih mudah untuk mengikuti kemajuan atau isu regresi dari semasa ke semasa.

Fungsi ini amat berguna untuk syarikat yang cuba terus meningkatkan kelajuan API mereka. Menyemak laporan meluas ini membolehkan anda menemui kemungkinan isu, membuat perubahan yang sesuai dan mengekalkan rekod sejarah tentang cara API anda telah berubah. Alat pelaporan KushoAI menjamin anda sentiasa mempunyai akses kepada cerapan yang boleh diambil tindakan.

API Testing Made Effortless : KushoAI

API Testing Made Effortless : KushoAI

Imej yang menunjukkan cara data dieksport dalam format html untuk kegunaan selanjutnya

Ciri ujian hujung ke hujung (beta) KushoAI

Melalui penggunaan fungsi ujian End-to-End (E2E) KushoAI, pembangun boleh mereplikasi proses dunia sebenar dengan menguji banyak interaksi API secara berurutan untuk memastikan ia berfungsi seperti yang diharapkan. Jurutera boleh menggunakan fungsi ini untuk menampung situasi rumit yang melibatkan beberapa titik akhir, menawarkan cerapan tentang gelagat API anda dalam persekitaran pengeluaran. Ujian E2E menawarkan banyak ciri, antara ciri yang paling menonjol ialah:

  1. Pemilihan API untuk Ujian: - Pengguna boleh menambah API baharu atau memilih API sedia ada pada suite ujian. Contohnya, memilih "API Ramalan Cuaca untuk Gorakhpur" seperti yang dipaparkan dalam imej menunjukkan bahawa beberapa titik akhir dan fungsi mungkin digabungkan untuk meniru senario dunia sebenar.

  2. Automasi Aliran Kerja: - Butang "Run" dan "Save Workflow" membolehkan pengguna membangun, menjalankan dan menyimpan end-to -ujian tamat untuk digunakan semula. Anda boleh membuat proses yang menguji API dalam susunan yang sama di mana pengguna sebenar akan berinteraksi dengannya.

  3. Kerjasama dan Penyesuaian: - Ciri Ruang Kerja di penjuru kanan sebelah atas membantu pasukan bekerjasama dalam proses dan mengekalkan persekitaran ujian dengan cekap.

  4. Antara Muka Mesra Pengguna: UI bertujuan untuk menyediakan pentadbiran API yang mudah, membolehkan pengguna bertukar dengan cepat antara menambah API baharu dan memilih API yang diprakonfigurasikan untuk ujian. Ia juga menyokong pelaksanaan API selari dan pengesahan senario masa nyata.

API Testing Made Effortless : KushoAI

Imej yang menunjukkan aliran UX Ujian E2E (BETA) KushoAI

KushoAI 대 Postman: 생성 테스트

Postman이 생성 테스트도 제공하는데 왜 KushoAI를 선택하는지 궁금할 수도 있습니다. 대답은 간단합니다. KushoAI는 훨씬 더 포괄적이고 지능적인 테스트 경험을 제공합니다. Postman은 응답 시간 및 상태 코드와 같은 제한된 요소를 기반으로 테스트를 생성하는 반면, KushoAI는 컬렉션의 세부 사항에 관계없이 가능한 모든 테스트 시나리오에서 테스트를 생성합니다.

이것은 획기적인 변화입니다. Postman은 사전 정의된 조건에 크게 의존하여 생성된 테스트의 범위를 제한하는 경우가 많습니다. 이와 대조적으로 KushoAI는 보다 강력한 접근 방식을 취하여 Postman이 간과할 수 있는 극단적인 경우 및 성능 병목 현상을 포함하여 더 광범위한 조건에서 API를 테스트합니다.

이를 설명하기 위해 로컬 호스트 백엔드 서버에서 시뮬레이션을 실행하여 Weather API를 사용하여 이전 예와 유사한 사용자 데이터 및 응답을 확인했습니다. 결과는 KushoAI의 생성 테스트 프레임워크가 더 많은 테스트 사례를 제공했을 뿐만 아니라 Postman의 접근 방식에서 완전히 놓친 잠재적인 실패 지점과 오류 시나리오를 더 깊이 파고들었음을 분명히 보여줍니다. 엔드포인트 안정성부터 데이터 무결성까지 모든 기능 계층에 걸쳐 포괄적인 테스트를 생성하는 KushoAI의 능력은 뛰어난 적용 범위와 신뢰성을 입증합니다.

게다가 KushoAI의 Generative AI는 API의 미묘한 문제를 식별하도록 맞춤화되어 특정 요구 사항에 맞는 지능형 어설션과 사용자 정의 테스트 사례를 제공합니다. 이는 Postman에는 부족한 기능입니다. KushoAI를 사용하면 표면 수준 측정항목을 기반으로 테스트하는 것이 아닙니다. 보안 취약성부터 실제 스트레스 테스트까지 전체 API 수명주기를 검증하고 있습니다.

간단히 말하면 KushoAI는 API의 모든 측면을 엄격하게 테스트하여 더 깊은 통찰력, 더 큰 유연성, 더 신뢰할 수 있는 결과를 제공함으로써 Postman과 같은 다른 생성 테스트 솔루션보다 성능이 뛰어납니다. PostmanKushoAI를 통해 생성된 테스트에서 KushoAI의 고급 테스트 엔진이 경쟁사와 차별화되는 수준의 적용 범위를 제공하는 방법을 보여주는 증거가 있습니다.

API Testing Made Effortless : KushoAI

API Testing Made Effortless : KushoAI

KushoAI는 데이터 조건으로 구성된 시나리오를 테스트하기로 결정한 반면 Postman은 오류 코드와 본문 내용으로 시나리오를 테스트하기로 결정했습니다.

결론

자동화된 테스트 도구라는 점 외에도 KushoAI는 API 개발 및 테스트의 전체 프로세스를 단순화하는 다른 플랫폼보다 견고하고 훨씬 더 뛰어난 플랫폼입니다. 최첨단 AI 기술을 사용하여 API 테스트와 관련된 지루한 노력을 제거하여 개발자가 실제로 중요한 것, 즉 창의성에 집중할 수 있도록 합니다. 원활한 CI/CD 통합부터 협업 작업 공간 및 사용자 정의 테스트 생성에 이르기까지 생산성 향상, 오류 감소, 전달 가속화에 필요한 모든 것을 제공합니다. 소규모 팀이든 대기업이든 KushoAI의 기능은 API가 철저하고 안전하며 효율적으로 테스트되도록 보장합니다. KushoAI와 함께라면 API 테스트가 더 쉬워질 뿐만 아니라 더 스마트해집니다.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!