0

Eclipse で Selenium WebDriver を使用しています。

タイトルが正しく表示されているか確認するメソッドを書きます。コードは次のとおりです。

class Check {
    String text_to_found;
    String reason;

    Check (String t, String r) {
        text_to_found=t;
        reason=r;
    }

    public void check_title() {
        try {
            Assert.assertTrue("Title " + text_to_found + " not found", text_to_found.equals(reason));
        } catch (AssertionError e) {
            System.err.println("title not found: " + e.getMessage());
        }
}

私はそのようなコマンドでそれを呼び出します:

Check title1 = new Check ("Title", driver.getTitle());
title1.check_title();

初めて正しく動作します。しかし、2 回目 (など) に、(新しく開いたウィンドウに対して) このメソッドを呼び出すと、タイトルが見つからないと表示されますが、それが正しいことはわかっています。コードの何が問題なのか教えてください。

4

1 に答える 1

0

コードを使用して google.com のタイトルを確認しました。タイトルが一致しない場合のコード -

  Check title1 = new Check ("G3oogle", driver.getTitle());
  title1.check_title();

結果が得られます-title not found: Title G3oogle not found

しかし、以下のように一致する場合 -

Check title1 = new Check ("Google", driver.getTitle());
  title1.check_title();

コンソールに何も出力していません。したがって、タイトルが一致する場合にコンソールに何かを出力したい場合は、コードを変更できます-

     public void check_title() {    

     if(text_to_found.equals(reason)){
          System.out.println("title found: Title "+text_to_found+" found");
     }
     else{

         System.out.println("title not found: Title "+text_to_found+" not found");
     }
    }
于 2012-07-17T14:03:34.277 に答える