内容:ガイド
序文
テスト開発エンジニアの役割
テスト開発エンジニアにとって、コードを理解し、テスト ツールを熟練して使用し、UI、インターフェイス、パフォーマンスをテストできること、テストの経験と思考ロジックをテストできることは基本的な要件であり、ビジネス機能をテストでき、コード層インターフェイスと単体テストを実行し、さらに重要なことに、能力と経験の蓄積を通じて、技術研究開発チームに適したツール プラットフォームを構築して、企業のコストを削減し、作業効率を向上させることができます。
テストプラットフォームの完全なセット:
ソースコード監視および分析プラットフォーム、インテリジェントなルールモデルの効果的なフィルタリング、問題の早期検出、プロジェクト品質の向上を通じて、ソースコードの体系的かつ定期的な包括的なカバレッジテストを実現する構成可能なプラットフォーム。
インターフェース自動化プラットフォームは、コードを 1 行も記述することなくドッキング層のテストを完了でき、http および jsf インターフェースを完全にサポートし、美しく視覚的なレポートを生成します。
UI 自動化プラットフォームを使用すると、コードを理解していない初心者テスターでも、すばやく簡単に UI 自動化テストを開始できます。以前は自分でコードを記述する必要がありましたが、今ではページ上のいくつかの要素を直接管理できるようになりました。
テスト ツール プラットフォームは現在、十数以上の大規模ビジネス システムと数十の便利な機能をカバーしており、テスト データを迅速かつ便利に生成およびクエリできるため、テスターの共同デバッグ時間や複雑なシーン データの作成時間を短縮できます。オンライン時間は長くありませんが、使用頻度は 30,000 近くあり、開発、テスト、製品担当者は大幅に作業が容易になります。
BUG 監視および分析プラットフォームは、バグのビッグデータを分析、分類、要約するインテリジェントな処理を通じて、チャートを使用してプロジェクトの品質と進捗状況をより簡潔かつ明確に表示します。
テスト開発エンジニアの必修道
本物のテスト開発エンジニアになるには、どのような難しいスキルが必要ですか?
1. 一定のテスト経験がある。テスターの問題点や困難を彼ら自身の立場で経験することによってのみ、私たちは彼らの問題を効果的に解決することができます。
2. 一般的かつ重要なテスト ツールの使用方法を理解します。たとえば、Loadrunner と jmeter はパフォーマンス テストによく使用され、Selenium は UI 自動化によく使用され、testng と junit は単体テストによく使用され、appscan、js インジェクション、xss インジェクション、SQL インジェクションなどはセキュリティ テストによく使用されます。 。
3. テストツールを開発する能力。
いくつかの主流のテクノロジースタック:
テストツールシステムフレームワーク構築:
java+maven+SpringMVC; python+django (現在テスト開発で一般的に使用されています)
最初のフレームワークでは、コードのフレームワークと構造をより適切に設計するために、階層的なマルチモジュール プロジェクトを作成するのが最善です。通常、dao 層は主にデータベースに関連付けられ、Web 層はフロントエンドとサービス層の間の接続であるコントローラーであり、サービス層はいくつかのパブリック サービスまたはビジネス処理ロジックを提供します。
Maven プロジェクトが確立されたら、現在の主流フレームワークである springMVC を使用して、フロントエンド データベースとバックエンド データベースを関連付けます。
コードの基礎がなく、テスト開発を始めたい人は、2 番目のフレームワーク (学習が容易)、つまり学習と使用が簡単な python+django を学ぶことができます。
フロントエンドページ: html、css、jquery、bootstrap、Echarts フロントエンドページは顔であり、ユーザーが操作する入り口であり、データの入力と表示が最も直感的に行われる場所です。
Css スタイルはページのレイアウトと美しさを決定します。jquery は js プログラミングを大幅に簡略化する js フレームワークです。echarts はシンプルで使いやすい共通グラフを提供し、ページをより上品にし、データ表示をより直観的かつ簡潔にします。
通常、フロントエンド リソースは Web レイヤーの静的な静的フォルダーに保存されます。
(静的リソース参照)
バックエンド サービス: spring、mybatis Spring フレームワークを使用すると、多くの基本作業を簡素化できます。構成後は、ビジネス アプリケーションの構築が容易になります。非侵襲的な軽量コンテナです。
データベース: Mysql または Oracle データベースのインストール、データベース テーブルの作成、フィールド設計、一般的な SQL ステートメント、
システム: Windows または Linux システムでのプロジェクトの構築、ログの表示およびその他の操作に熟練している;
サービス コンテナ: Tomcat サービスのデプロイメント、nginx ロード構成、Docker の使用;
継続的インテグレーション: git、jenkins;
開発ツール: idea および eclipse;
コードのデバッグ: testng または junit ユニットのデバッグとデバッグおよびリモート デバッグの使用;
高度なテスト開発エンジニア
テスト効率の向上、テストコストの削減、テスト価値の最大化を図るため、テスト経験、テストツールの使いこなし、一定の開発能力を前提として、独自にプラットフォームを開発したり、既存のオープンソースの二次開発を行ったりすることができます。ツール 、これはテスト開発エンジニアが進歩し続ける唯一の方法でもあります。
いくつかの自動化ツール プラットフォーム:
1. インターフェース自動化プラットフォーム
テストツールをベースにHttpClient、testngなどを組み合わせて美しいビジュアルレポートを生成し、指定担当者にメールで送信するインターフェース自動化プラットフォームを実現します。数か月間安定して実行されており、インターフェイスの入力パラメータ、暗号化されたパラメータ転送とデータベースのチェックポイント、および複数のインターフェイス間の入出力パラメータの依存関係を実現しています。これにより、複数のインターフェイスと複数のシナリオの組み合わせたテストを実現し、完全にカバーできます。 http および jsf インターフェースのテスト インターフェース面でのユーザーのテスト効率を向上させます。
2. UI自動化プラットフォーム
テストツールをベースに、UI自動化プラットフォームを実現するためにSelenium、Jenkins、testngが導入されています。現在、多くの企業が UI 自動化を行っており、通常は Java (または Python) と Selenium を使用して自動化プログラムを実行していますが、これは初心者のテスターにとっては困難です。しかし、テスト プラットフォームでは、テスターはコードを記述せずにページ上の関連要素を維持するだけでよく、UI の自動化を実現でき、複数のシナリオを組み合わせてテストできるため、テスト環境のバージョンの更新やオンライン回帰テストに便利です。エレメントのメンテナンスを始めるのに簡単で便利です。
3. BUG監視・分析プラットフォーム、テストツールプラットフォームなど、さまざまなテストプラットフォームもあります。
以下は、私がまとめた 2023 年の最も完全なソフトウェア テスト エンジニア学習知識アーキテクチャ システム図です。 |
1. Pythonプログラミングの入門から習得まで
2.インターフェース自動化プロジェクトの実戦
3. Web自動化プロジェクトの実戦
4. アプリ自動化プロジェクトの実戦
5. 一流メーカーの再開
6. DevOps システムのテストと開発
7. 一般的に使用される自動テストツール
8、JMeterのパフォーマンステスト
9. まとめ(最後にちょっとしたサプライズ)
誰もがそれぞれの闘いの道を持っており、勇敢に前進し、常に自分の目標を追求しなければなりません。どのような課題や困難が降りかかっても、成功できると信じて頑張ってください。常に一生懸命働き、与えることによってのみ、私たちはより良い未来を手に入れることができます。
たゆまぬ努力によってのみ、私たちは大義を達成することができ、前向きな姿勢によってのみ、より良い明日を導くことができ、自分自身に挑戦する勇気によってのみ、自分の限界を超えることができます。したがって、苦労をやめず、あらゆる努力を成功への脚注にしてください。
誰の心の奥底にも強力な力があり、それを探求して活用する意欲があれば、どんな困難や課題も乗り越え、自分をどんどん良くすることができます。さあ、戦い続けてください!