私の職場では、Web ブラウザーの自動テストを実装する必要があります。Selenium Web ドライバーが優先オプションとして選択されました。同社はクライアント ベースに Internet Explorer を使用しているため、このブラウザを使用してテストを実施する必要があります。
使用:
セレン 2.25.1、IEDriverServer 2.25.3、nUnit 2.6.1
最も基本的なテストを作成し、個人のラップトップで正常に実行しました。
C# クラス プロジェクトを作成します。Selenium、IEDriverServer (場所)、および nUnit DLL への参照を追加します。
nUnit のテスト コードとクラス/メソッドの装飾を追加します。
ビルド、コンパイルなど
nUnit で、新しくコンパイルされた DLL プロジェクトを見つけて実行します。
期待される結果は、IEDriverServer が Internet Explorer のインスタンスを読み込んで作成し、Google ホームページに移動することです。検索を実行し、結果ページのタイトルを確認して、結果のリンクを解析します。
私の職場のマシン (マカフィーがインストールされている) から同じテストを実行すると、実際には、Google 検索ボックスに (SendKeys を使用して) 入力された各文字が完了するまでに約 6 ~ 10 秒かかります。その結果、IEDriverServer はあきらめて閉じます。nUnit はテストを失敗として報告します。
調べてみると、マカフィーのアクセス保護ログに「Common Standard Protection:Prevent common programs from running files from the Temp folder」というエントリが何百もあることがわかります。
私は Web 自動化は初めてですが、これが問題の原因であると確信しており、レジストリと環境変数を使用してさまざまなハックを試みましたが成功しませんでした。
この問題について他の場所で多くを見つけることができないようです.1人が回避策を提案できることを願っています.
同社は、明らかな理由で McAfee 機能を緩和することはできません。