Otomasyon çerçevem, Java'da Selenium API kullanılarak oluşturulan Perfecto bulutudur. Test senaryoda Takvimi Ay görünümünde açmam ve sonra (Sağdan Sola) kaydırıp sonraki ayın görüntülenip görüntülenmeyeceğini doğrulamam gerekiyor. Birkaç mesajda okudum ve bunun için HaspMap'in kullanılabildiğini buldum. Bu senaryo için hashmap nasıl kullanılacağı konusunda bana rehberlik edebilir. Bazı kod snippet'leri gerçekten yardımcı olacaktır.Ayları doğrulamak için Java Selenium'da hashmap kullanma Ay
Deney Adımları: Ay görünümünde
- başlatın Takvim
- Yakalama geçerli ayı (örn - Mart) ve String kaydetmek curMonth
- Şimdi Ay için kaydırma (sağdan sola) Değiştirme
- Ekranda görüntülenen Ayın değerini yakala (şimdi Nisan geliyor) ve dize kaydet SonrakiSonraki
- nextMonth değerini doğrulayın aslında curMonth 'ün yanındaki değer olduğunu doğrulayın
Kullanmaya çalıştığım kod örneğinin altında.
private static String getMonthByValue(HashMap<String, Integer> table, Integer newMonthValue) {
return table.entrySet().parallelStream()
.filter(entry -> entry.getValue().equals(newMonthValue))
.map(Map.Entry::getKey).findAny().get();
}
kullanımı: Java 8
Stream API
özelliklerle
private static String getMonthByValue(HashMap<String, Integer> table, Integer newMonthValue) {
for (Map.Entry<String, Integer> mapEntry : table.entrySet()) {
if (mapEntry.getValue().equals(newMonthValue)) {
return mapEntry.getKey();
}
}
return null;
}
veya daha fazla özlü versiyonu: comments
HashMap<String, Integer> Table = new HashMap<String, Integer>();
Table.put("JAN", 1);
Table.put("FEB", 2);
Table.put("MAR", 3);
Table.put("APR", 4);
Table.put("MAY", 5);
Table.put("JUN", 6);
String testdata="MAR";
System.out.println("------------------------------------------------");
Integer curMon = Table.get(testdata);
System.out.println(curMon);
//Here output will be 3 which it will fetch from the hashmap table
//Now I am adding 1 from the return value which is 3. So 3+1=4
Integer newMonthValue=curMon+1;
//Now how to associate the integer value which is 4 stored in newMonthValue and map it to April from the Map
Benim senaryoda, HaspMap'in kullanılması gereken birkaç yazı okuduktan sonra, bunu yayınladım. – Irf
Tamam, ancak birkaçına bir bağlantı eklemek, senaryonun anlaşılmasına yardımcı olur. Bir HashMap ', bir tuşa değer eşler. Bu tarihler için anahtar ve değer olarak ne görüyorsunuz ve neden iki (geçmiş ve şimdiki) tarihleri doğrudan karşılaştırıyorsunuz? –
ChiefTwoPencils