私は初心者プログラマーで、非常に初心者です。
私は私たちのウェブサイトをテストするプログラムを書こうとしていて、JavaとSeleniumを使用しています。
問題は、簡単にコールバックしてさまざまな呼び出しで使用できる変数を格納できる「テーブル」または「参照」を作成したいということです。
HashMapを使おうとしましたが、テストコードを再実行すると、毎回新しいハッシュマップがあるため、うまくいきませんでした。値を格納し、次にコードを実行するときにそれらを記憶できるものが必要です。
mysqlテーブルの作成を検討しましたが、作成された変数をテーブルから呼び出す方法がわかりません。
これが理にかなっていることを願っています。:0)例がもっと役立つかどうかを以下で確認してください++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++
これが私が使用していたハッシュマップの例です:
HashMap idTable = new HashMap();
idTable.put("GroupName", new String("Group " +
Long.toHexString(Double.doubleToLongBits(Math.random()))));
element = driver.findElement(By.id("name"));
element.sendKeys((String)idTable.get("GroupName"));
参考:これがうまくいかない理由は、「if」ステートメントでラップできるようにしたいからです。「GroupName」という変数がすでに存在する場合は、それを再度実行しないようにコンピューターに通知します。ただし、スクリプトを実行するたびに、関数[HashMap idTable = new HashMap();]を呼び出します。 HashMapはどこにも保存されていないため、その呼び出しを行わない方法がわかりません。毎回新しく作成されます。
ありがとう、Orli
これをどこに追加するかわからない:しかし、ここで最初の提案に従うことは私がしたことです。
HashMap idTable;
try {
ObjectInputStream is = new ObjectInputStream(
new FileInputStream( "C:\ Documents and Settings \ My Documents \ Selenium local \ hashmap.dat"));
idTable =(HashMap)is.readObject();
}
catch(Exception e){
idTable = new HashMap();
}
そして:
try {
ObjectOutputStream os = new ObjectOutputStream(
new FileOutputStream( "C:\ Documents and Settings \ My Documents \ Selenium local \ hashmap.dat"));
os.writeObject(idTable);
os.close();
}
catch(例外e){
}
動作します。:0)助けてくれてありがとう!