自動テスト面接の質問と回答

自動テストとは何ですか?自動テストは何を学びますか?テスト面接の質問と回答を自動化しますか?-読んだ後、面接担当者を掛けてください!

1.はじめに

私は最近、子供の靴について不満を述べ、オンラインでこれらの包括的で適切な自動テスト面接の質問を見つけるのは難しいと述べました。これは私の個人的な経験と収集に基づいています。

あなたは正しい本を読み、慌てる必要はありません。時間をかけてください。

自動テストとは何かから始めましょう!

2.自動テストとは何ですか?

自動テストとは何ですか?

自動テストについて初めて知ったとき、私は自動テストについて何も知りませんでした。3つの「自動」タイトルは恋に落ちるようなものです。恋に落ちるように、彼女を見つける前に、彼女が誰であるかを知る必要があります。 。

自動テストは、人間主導のテストをマシン実行に変換するプロセスであり、プログラムを使用してプログラムをテストするプロセスです。言葉っぽい!その後...

3.自動テストのためにどのようなスキルを学ぶ必要がありますか?

これは私が以前書いたもので、自動テスト包囲ライオンが2020年に習得する必要があるスキルについて詳しく知ることができます。


4. 2020年のネットワーク全体に対する最も完全な自動テスト面接の質問と回答、オリジナルの乾物はこちら

1.自動テストフレームワークをカプセル化しますか?

これは最も求められていることであり、多くの企業は採用要件に直接書き込むことさえしています!

もちろん、自動化フレームワークの主要なコアフレームワークは、レイヤー+ POモードです。それぞれ、基本的なカプセル化レイヤーBasePage、POページオブジェクトレイヤー、TestCaseテストケースレイヤーです。次に、ログ処理モジュール、ini構成ファイル読み取りモジュール、unittest + ddtデータドライブモジュール、およびJenkins継続的統合モードを追加します。

2.社内で自動テストを実装および促進する方法は?

1.プロジェクトチームは、自動化ツールを調査して選択し、デモの事例を示すために会いました。主に、2種類のセレンとロボットフレームワークを示しました。

2.自動テストフレームワークを構築し、プロジェクトに自動化を徐々に実装します。

3.プロジェクトの自動化プロセスとフレームワークをドキュメントにまとめる

4.アプリケーションを会社の他のプロジェクトグループに宣伝する

3.自動テストプロセスについて教えてください。

1.自動テスト計画を作成する

2.自動テストケースの設計

3.自動テストフレームワークとスクリプトを作成する

4.スクリプトをデバッグして維持する

5.無人テスト

6.ポストスクリプトのメンテナンス(ユースケースの追加、更新バージョンの開発)

4.自動テストケースの作成方法 次の回答のいずれかを選択してください。

1.ユースケースは、自動化テストエンジニアによって設計されます。一般的に、基本的なビジネスプロセスが始まりです(ログインしてビジネス出口を完了します)。

2.システムテストケースの画面またはビジネスエンジニアが提供する画面

5.前のプロジェクトでの自動テストの実行戦略は?

最後のプロジェクトは定期的に実行され、設定された実行時間は夕方の12時です。実行が完了すると、電子メール通知が自動的に送信されます。

6.自動テストでさらにバグが見つかりましたか?

以前のプロジェクトチームはテストに合格した基本機能を使用してスクリプトを自動化し、後続のバージョンで自動テストを実行したため、それほど多くありません。これにより、主に、新しいバージョンが更新された後、テストに合格した機能に問題が発生しないことが保証されます。

7.自動テストの価値は何ですか?なぜあなたの会社は自動テストを行っているのですか?

自動テストを引用すると、退屈な退行テスト作業の多くを置き換え、ビジネステスターを解放できるため、ビジネステスターは複雑なビジネス機能モジュールに集中できます。自動テストは通常​​、安定した機能を自動化して、製品の更新による以前の安定化機能にバグはありません

8.自動テストで誤検知はありましたか?誤警報が発生した場合はどうすればよいですか?

誤検知が発生しました。自動テストレポートにバグが検出されたことが示される場合があります。実際には、手動テストを行って、バグが存在しないことを確認してください。

誤検知の理由は一般に次のとおりです。

1.要素の配置が不安定であり、スクリプトの安定性を可能な限り改善する必要があります。

2.開発によってページが更新されましたが、テストは時間内に更新および維持されませんでした!

9.自動テストプロセス中に、どのような問題が発生し、どのように解決しましたか?

1.頻繁にページを変更し、ページオブジェクトクラスのコードを頻繁に変更する

2.自動テストで時々誤検知が発生する

3.自動テストカバレッジの結果:Jenkinsは時間に基づいてフォルダーを作成します

4.自動テストコードのメンテナンスはより面倒です

5.データベースデータを比較する自動テスト

10.最後の会社は自動テストにどのフレームワークを使用していますか?

次のいずれかを指定できます。

1. python + selenium + unittest + htmltestrunner

2. python + selenium + pytest + allure

3. robotframework + Selenium2Library

11.自動化チームには独自のグループがありますか?

もちろん、私たちが使用しているグループ番号は次のとおりです。695458161プロジェクトの問題を解決するためのソフトウェアテストと自動化の神々が数多く存在し、無料の資料が随時発行されます。

12.セレン自動テストでは、一般的にどのような種類のテストを完了していますか?自動カバレッジ?

主にスモークテストと回帰テストです。回帰テストは主に、自動化された手段によって実現される安定した機能を備えたいくつかのシナリオを記述し、テスト時間を節約します。自動テストケースも常に更新および反復されるため、意図的な統計はなく、約30%から40%です。

13.スクリプトの実行中に、現在の要素を強調表示する方法を教えてください。

これは実際にはjavaScriptを使用して現在の要素の境界線スタイルを変更し、強調表示効果を実現しています。

14.要素が見つからない場合、一般的に検討する理由は何ですか?

1.ページの読み込み要素が遅すぎる、および待機時間

2.ページにはフレームフレームページがあり、配置する前にフレームフレームにジャンプする必要があります

3.要素が動的要素である可能性があり、配置方法を最適化する必要があります。要素の配置を使用したり、親ノードまたは兄弟ノードの配置を使用したりできます。

4.要素は認識されている可能性がありますが、要素が使用不可で書き込みできないなど、操作できません。事前操作を完了するためにjsを使用する必要がある、

15.あなたが精通している要素の配置方法は何ですか?

ID名クラス名link_text css xpath

16.フレームフレームページの扱い方

まず、driver.switch_to.frame()を使用してフレームにジャンプし、

次に、ページ要素を操作し、

操作後、driver.swith_to.default_content()を使用してジャンプアウトします

17.警告ポップアップウィンドウの扱い方を教えてください。

driver.switch_to.alertメソッドを使用して、最初にアラートポップアップにジャンプします

次に、承認を介して[OK]ボタンをクリックし、却下をクリックして難易度をキャンセルし、ポップアップウィンドウのテキストをテキスト()で取得します。

18.複数のウィンドウを処理する方法は?

この複数のウィンドウ間のジャンプ処理は、プロジェクトでよく発生します。つまり、リンクをクリックすると、リンクが新しいタブで開き、新しいタブで開かれたページに要素が表示されます

1.リンクをクリックする前に、driver.current_window_handleを使用して現在のウィンドウハンドルを取得します。

2.リンクをもう一度クリックします。クリックして、driver.window_handlesを介してすべてのウィンドウのハンドルを取得します。

3.次にリサイクルして新しいウィンドウのハンドルを見つけ、driver.switch_to.window()メソッドを使用して新しいウィンドウにジャンプします。

19.要素が有効/無効/チェックされていることを確認するにはどうすればよいですか?

要素の配置後:isEnabled()、isSelected()、isDisplayed()の3つのメソッドで判断します。

20.ドロップダウンメニューの処理方法を教えてください。

Seleniumには、Selectというクラスがあり、ドロップダウンメニューの操作をサポートしています。使用方法は以下の通りです。

1.要素の配置

2.配置された要素をSelectオブジェクトに変換します。

sel =選択(配置された要素オブジェクト)

3.下付き文字、値、またはテキストでドロップダウンボックスを選択します。
sel.select_by_index(インデックス);
sel.select_by_value(値);
sel.select_by_visible_text(テキスト);

21.カレンダーのようなWebフォームをどのように扱いますか?

まず、現在のWebページトライアルカレンダープラグインのフロントエンドコードを分析して、要素ごとに配置できるかどうかを確認し、日付をクリックする必要があります。そうでない場合は、JavaScriptを使用する必要があります。テキスト入力ボックス付きのカレンダーコントロールもあり、これを直接sendKeys()メソッドに送信して、時間の受信データを取得できます。

22.発生した例外を説明する例を挙げてください

一般的なセレンの例外は次のとおりです。

NoSuchElementException:そのような要素の例外はありません
TimeoutException:タイムアウト例外

ElementNotVisibleException:要素不可視例外
NoSuchAttributeException:そのような属性例外
なしNoSuchFrameException:フレーム例外なし

23.ブラウザでの終了と終了の違いを閉じる

簡単に言うと、どちらもブラウザセッション機能を終了できます。閉じるとは、現在フォーカスしているタブページを閉じることです。終了すると、すべてのブラウザのタブページを閉じてブラウザセッションを終了できます。これら2つの違いを知っているため、テストの終了前にquitが一般的に使用され、ユースケース中にページを閉じるためにcloseが使用されることがわかっています。

24. Seleniumでスクリーンショットを撮る方法、およびユースケースの実行に失敗した場合のスクリーンショットを撮る方法

Seleniumには、スクリーンショットを取得するためのget_screenshot_as_file()メソッドが用意されています。これは、例外をキャッチしてエラーのスクリーンショットを取得するために、try / exceptと組み合わせて使用​​されます。

25.ファイルをアップロードするには?

要素を見つけたら、send_keys()メソッドを使用して要素を設定します。このパラメータは、アップロードするファイルのパスです。

26.自動化で待機する3つのタイプは何ですか?それらの特徴は何ですか?

1. time.sleep(2)などのスレッド待機(強制待機):スレッドは2秒間強制的にスリープされ、2秒後に後続のコードが実行されます。より少ない使用をお勧めします。

2. imlicitlyWait(暗黙の待機)は、要素が見つかるかタイムアウトになるまで、指定された時間範囲内で要素を検索し続けます。この機能は、ページ全体が読み込まれるまで待機する必要があることです。

3. WebDriverWait(明示的な待機)は通常、カスタム関数コードです。このコードは、要素が読み込まれるのを待ってから、後続のコードの実行を継続するために使用されます

27.作成したテストスクリプトを別のブラウザーで実行できますか?

もちろん、私が書いたユースケースは、IE、Firefox、Googleの3つのブラウザーで実行できます。実装のアイデアは、メソッドをカプセル化し、ブラウザ文字列をそれぞれ渡して、着信IEの場合はIEを使用し、着信FireFoxの場合はFireFoxを使用し、着信Chromeの場合はChromeブラウザを使用し、どのブラウザを使用できるかです。全体的なini構成ファイルで構成します。各ブラウザで使用されるドライバは異なることに注意してください。

28. POモードとは何か、なぜそれを使用するのか

POはPage Objectモードの略で、ページをオブジェクトとして扱い、ページの要素間の操作方法がページオブジェクトの属性と振る舞いであるという設計思想です。 、それぞれ:基本的なカプセル化レイヤーBasePage、POページオブジェクトレイヤー、TestCaseテストケースレイヤー。

5.面接が成功したことを願っています。OFFERを提供して、受け入れてください。

最後に、私はすべての求職者が彼の希望の仕事を見つけることができることを望みます!昇進と昇給を今すぐ達成!

 

 

この記事は、Zhuge Zhugeから複製されています。https//zhuanlan.zhihu.com/p/133325731

おすすめ

転載: www.cnblogs.com/mrjade/p/12737889.html