自動テスト用の 8 つの一般的なオープンソース フレームワーク

 今日のオープンソースの時代では、私たちは密室で自動車を開発するのをやめ、オープンソースを温かく受け入れる必要があります。この記事では、パフォーマンス テスト、Web UI テスト、API テスト、データベース テスト、インターフェイス テスト、単体テストなどについて、github またはコード クラウド上の優れた自動テスト オープン ソース プロジェクトを整理し、役立つことを願っています。

1. パフォーマンスの自動テスト

1. プロジェクト名:Jmeterをベースとしたオンライン圧力測定プラットフォームとオンライン管理Jmeterスクリプトシステム

Bステーション最高のPythonインターフェース自動化テスト上級チュートリアル集(リアルエンタープライズプロジェクト実戦)

プロジェクトの説明:

  • このプロジェクトは、renren-fast Java 開発プラットフォームに基づいて開発されており、カーネルは Jmeter-Api および Jmeter スクリプトに基づいてオンライン パフォーマンス プレッシャー測定を実現しています。

以下のような特徴を持っています

  • わかりやすいコード構造とコメント、読みやすく二次開発も容易
  • フロントエンドとバックエンドの分離を実現し、トークンを介してデータのやり取りを行うことで、フロントエンドがバックエンドのテクノロジーを意識する必要がなくなります。
  • 柔軟な権限制御。ほとんどの権限要件を満たすようにページまたはボタンに制御できます。
  • ページのインタラクションには Vue2.x を使用し、開発効率を大幅に向上させます。
  • 完璧なコード生成メカニズムにより、エンティティ、XML、DAO、サービス、HTML、JS、SQL コードをオンラインで生成できるため、開発タスクが 70% 以上削減されます
  • 追加、変更、削除、一時停止、再開、ログ表示などのタスクを動的に完了できるクォーツ タイミング タスクを導入します。
  • API テンプレートが導入され、トークンがログイン トークンとして使用されるため、APP インターフェイスの開発が大幅に容易になります。
  • Hibernate Validator 検証フレームワークを導入してバックエンド検証を簡単に実装する
  • すでにサポートされているクラウド ストレージ サービスを紹介します: Qiniu Cloud、Alibaba Cloud、Tencent Cloud など。
  • API インターフェイス ドキュメントの作成を容易にするための Swagger ドキュメント サポートの導入
  • ルーティング メカニズムを導入し、ページを更新して現在のページに留まります
  • 分散圧力試験、試験レポートの生成、オンライン表示とダウンロードをサポートする Jmeter-Api の最新バージョンを紹介します。
  • Echarts を導入して、パフォーマンス ストレス テスト結果のオンライン観察をサポートします。

プロジェクトアドレス: https://gitee.com/smooth00/stressTestPlatform

2. プロジェクト名:分布応力試験ツール Beetle.DT

プロジェクトの紹介: .NET ベースの分散ストレス テスト ツール。ユーザーはニーズに応じて関連するテスト ケースを作成できます。ツールの管理インターフェイスを通じて、テスト ケースをサービス センターにプッシュし、サービス センターに応じてテスト ケースを配布できます。実際の圧力テスト要件に合わせて、異なるノードで実行します。このツールは、テスト状況に応じてリアルタイムでテスト結果を取得し、テスト完了後に特定のテストレポートを照会することもできます。ノードはプロセス分離された方法でテスト ケースを実行するため、テスト ケースは互いに独立して実行されます。

プロジェクトアドレス: https://gitee.com/ikende/Beetle.DT

3. プロジェクト名:Goベースストレステストツールarmant

プロジェクトの紹介: armyant は http ストレス テスト ツールから変更されました。ただし、hey は http インターフェイスのストレス テストのみをサポートしますが、armant はストレス テスト プロトコルをカスタマイズできます。現在、http および mqtt プロトコルのストレス テストはデフォルトで実装されています。

プロジェクトアドレス: https://gitee.com/plug/armyant

2. Web UIの自動テスト

1. プロジェクト名:自動テストプラットフォーム LuckyFrame 

プロジェクトの紹介: このプロジェクトは、無料のオープンソース テスト プラットフォームです。最大の特徴は、インターフェイスの自動化、WEB UI の自動化、APP の自動化をあらゆる次元でカバーし、分散テストをサポートしていることです。テスト キーワード ドライブにより、テストの問題も大幅に解決されます。クラスメイトのコード基盤が弱いという問題。同時に、品質管理に関連するいくつかの機能も統合され、QA の日常業務におけるプロジェクトプロセスデータの収集の問題を解決し、いくつかの簡単な品質レポートを表示できます。

プロジェクトアドレス: https://gitee.com/seagull1985/LuckyFrameWeb

2.プロジェクト名:AutoLineオープンソースプラットフォーム

プロジェクトの紹介: AutoLine オープン ソース プラットフォームは、二次開発用の RobotFramework に基づいたオープン ソースの自動テスト ソリューションであり、RobotFramework のほぼすべてのライブラリをサポートしています。

プロジェクトアドレス: https://gitee.com/lym51/AutoLine

3. APIの自動テスト

プロジェクト名:Restful API統合テストツールHitchhiker

プロジェクトの紹介: Hitchhiker は、スケジュール、データ比較、ストレス テスト、アップロード スクリプトのカスタマイズ リクエストをサポートするオープン ソースの Restful API テスト ツールです。簡単にローカルにデプロイして、チーム メンバーと一緒に API を管理できます。

プロジェクトアドレス: https://gitee.com/iwxiaot/Hitchhiker

4. インターフェイスの自動テスト

1. プロジェクト名:自動テストプラットフォームphoenixframework

プロジェクトの紹介: phoenixframework は、コードホスティング、拡張機能 (ノードノード) 管理、スケジュールされたタスク、phoenix_develop モジュールを通じてデバッグされたユースケースの分散または同時実行を統合する自動テストプラットフォームです。このプラットフォームは SSH4 を使用して開発され、Webgui、インターフェイス、モバイル、その他の端末のテストと監視をカバーします。
現在、webGUI モジュールは完成しており、chrome、Firefox、IE、httpunit、および phantomjs ドライバーと互換性があります。

プロジェクトアドレス: https://gitee.com/phoenixframework/phoenixframework

2. プロジェクト名:TCP/UDPテストツールSocketDebugger

プロジェクトの紹介: SocketDebugger は、シリアル ポート転送機能と自動応答機能を備えた TCP/UDP テスト ツールです。

プロジェクトアドレス: https://gitee.com/hkiaipc/Socket-Debugger

3. プロジェクト名:HTTPインターフェーステストプラグイン ApiDebug

プロジェクトの紹介: ApiDebug は、HTTP および HTTPS インターフェイスのテストに使用できるブラウザー HTTP インターフェイス テスト プラグインです。POST、GET、その他のメソッドをサポートし、json や xml などのカスタム インターフェイス パラメーターもサポートします。このシステムは履歴レコードの保存をサポートしており、テスト インターフェイスを CrapApi インターフェイス管理システムに同期することもできます (http://api.crap.cn にログインし、[同期] をクリックして保存します)。インターフェイスのテストに加えて、システムには json フォーマットなどの小さなツールも含まれています。 

プロジェクトアドレス: https://gitee.com/CrapApi/ApiDebug

 3. プロジェクト名:JavaベースのHTTPインターフェーステストツール

プロジェクトの紹介: JApiTest は Java で開発された Http インターフェイス テスト ツールで、http パラメーターを設定することで視覚的な形式でテスト インターフェイスにアクセスし、返された結果を判断できます。

プロジェクトアドレス: https: //gitee.com/penngo/JApiTest

 5. データベースの自動テスト

プロジェクト名: データベース単体テスト フレームワーク xlsunit

プロジェクトの紹介: 入力と出力の比較として Excel を使用する、データベース アプリケーション用の単体テスト フレームワーク。多数のデータベース操作に適しています。

xlsunit は次の状況で使用できます。

  • Spring 単体テストのトランザクション ロールバック メカニズムが利用されるため、Spring または Spring Boot を使用する必要があります。

  • データベース アプリケーション、特にビジネス オペレーションでは、複数のテーブルに変更が発生します。

  • xlsunit は Spring 4 以降、SpringBoot1.5 以降をサポートし、Oracle、MySql、Postgres およびその他のデータベースをサポートします。

プロジェクトアドレス: https://gitee.com/xiandafu/xlsunit

6. データチューニングテスト

システムのパフォーマンスと効率に影響を与えるデータベースは非常に重要な役割を果たしており、SQL の最適化は最も低コストの最適化方法であるため、テスターが注意を払う必要がある側面としてこの項目もリストします。

プロジェクト名:soar-web

プロジェクトの紹介: millet soar のオープンソース SQL 分析および最適化 WEB グラフィカル ツールに基づいて、soar 設定の追加、変更、コピー、複数設定の切り替え、設定のエクスポート、インポートおよびインポート機能をサポートします。現在、mysql のみがサポートされています。

プロジェクトアドレス: https://github.com/xiyangxixian/soar-web

プロジェクト紹介: 10 月 20 日の OSCAR DAYS で、Xiaomi はオープンソースの自社開発 SOAR (SQL Optimizer And Rewriter) を発表します。

       これは、インテリジェントな SQL 最適化および書き換えツールです。開発者は、このツールを通じて直接 SQL の品質を迅速にチェックし、評価レポートを生成し、問題のある SQL がオンラインになってサービス品質の低下を引き起こすのを防ぐことができます。オンライン コードの品質を可能な限り向上させるだけでなく、人間による不作為によって引き起こされる隠れた危険を回避することもできます。

       SOARは、パーサー、統合環境、最適化提案、書き換えロジック、ツールセットの5つのモジュールで構成されています。データベースに依存しない独自のSQL分析機能を備えており、提供される統合環境を通じてSQL自体やデータベース環境を見直し、隠れた危険性や問題点を発見することができます。

近年、自動テストの人気がますます高まっており、この分野における新たな課題と機会も同時に現れており、特に AI、RPA、機械学習は数年以内に急速に成長すると予測されています。そこで今回は、オープンソースの自動テストフレームワークを9つ紹介しますので、参考にしてみてください。

8 つのオープンソース自動テスト フレームワーク、迅速な収集

1、カリーナ

Carina は、特定のテクノロジー スタックに依存しない Java ベースの自動テスト フレームワークであるため、テスターは iOS と Android の間でのみテスト自動化コードを再利用できます。

その重要な機能は、モバイル端末、Web アプリケーション、REST サービス、さらにはデータベースを含むすべてのテスト層を同じアプリケーションに結合できること、リレーショナル データベースとサブリレーショナル データベースをサポートしていること、FreeMarker テンプレート エンジンを使用して REST リクエストを生成できることです。

2、テストプロジェクト.io

Testproject.io は、ソフトウェア テストの自動化に詳しくなく、強力なコミュニティを持つ無料のプラットフォームを探しているテスターに​​適しています。Selenium と Appium 上に構築されており、テスターは一般的な自動化操作でテストを実行できます。

その重要な機能には、ソフトウェア テストと API をグローバル テスターと共有するためのサポート、テスト レコード、グローバル オートメーション グリッド、オートメーション ビルディング ブロックを含む機能、Python、JavaScript、Java、C++ などを含む複数言語のサポートが含まれます。

3、ゲージ

Gauge は近年人気が高まっているテスト自動化ツールで、プラグイン アーキテクチャに基づいた軽量かつクロスプラットフォームで、あらゆる言語、IDE、エコシステムで使用できます。

その重要な機能は次のとおりです: シンプルな構文、シンプルなセットアップ、単一のコマンドを使用してフレームワークを開始および実行できる、さまざまな拡張機能によるモジュラー アーキテクチャのサポート、特定の構造がなくても、シンプルな Markdown でテキスト ドキュメントを作成できます。

4、セレン

Selenium は、Web アプリケーション用の優れたオープンソース自動テスト フレームワークであり、複数のオペレーティング システム間の相互互換性があるため、テスト スクリプトを複数の言語で記述することができます。

その重要な機能は、クロスプラットフォーム、オペレーティング システムおよびブラウザとの互換性、複数の API およびプログラミング言語との統合、高度なカスタマイズ可能、特定のスクリプトを学習せずにテストできるツール Selenium IDE との統合です。

5、カタルーニャ語

Katalon は、Web、モバイル、API の自動テストをサポートする、操作が簡単な自動テスト フレームワークです。

その重要な機能は、複数のスクリプト言語の拡張サポート、Jira 実装のサポート、テスト スクリプトの自動生成、Web 操作の分析と記録、および関連オブジェクトのキャプチャによるプロセスの自動化です。

6、ガレン

Galen をテスト自動化作業に使用することは、ユーザー エクスペリエンスを向上させるためにより重要であり、特に UX テストを目的としており、モバイル アプリケーションや Web アプリケーションのレイアウトをテストおよび検証するための特定の構文を提供します。

その重要な機能は、レイアウト仕様をテストするためにブラウザ ウィンドウのサイズを指定できること、テスト ファイルを Galen 構文、JavaScript または Java で作成できること、ヒート マップ分析により詳細な HTML レポートを生成できることです。

7、静寂

Serenity は、自動受け入れテストと回帰テストの作成に役立つ Java ベースのオープンソース自動テスト フレームワークであり、Behavior Driven Development (BDD) と簡単に統合できるツールです。

その重要な機能は次のとおりです: ボイラープレート コードを抽象化することで BDD および Selenium テストの作成を容易にすることができます。下位レベルの記録の詳細を維持しながら、より高いレベルで複数のシナリオをテストできます。WebDriver 管理、Jira 統合、実行などの事前構築された機能を備えています。並列処理など。

8、アピウム

Appium は、モバイル アプリケーションをテストするための WebDriver プロトコルに基づくオープン ソースの自動テスト フレームワークで、同じ API を使用してさまざまなプラットフォームのテストを作成できます。

その重要な機能は、さまざまなプログラミング言語とフレームワークを提供すること、テスターが要素リポジトリを作成してそれに応じて管理できること、iOS、Android、および Windows テスト スイートの間で再利用可能なコードとテストをサポートすることです。

おすすめ

転載: blog.csdn.net/xiao1542/article/details/131983602