Próbuję przetestować aplikację (SAP GUI) na maszynie wirtualnej. Zauważyłem, że podczas gdy moje skrypty działały zgodnie z oczekiwaniami, gdy zacząłem je od samego RFT, miałem problemy z tą samą częścią podczas uruchamiania skryptu z wiersza poleceń przy użyciu Powershell na tej samej maszynie wirtualnej.Inne zachowanie podczas uruchamiania RFT z linii poleceń
Kontrola naszych dzienników dała wynik, że niektóre z moich metod przy użyciu metody exists()
wydawały się być winowajcą, ponieważ metoda zajęła 10-20 sekund, aby zdecydować, czy obiekt istnieje, zamiast ułamek sekundy. Wydaje się również, że istnieje korelacja pomiędzy ilością używanych exists()
a dodatkowym czasem potrzebnym dla metod (widzę czas trwania dla każdej metody): metoda z jednym exists()
zajęłaby 10 sekund, metoda z trzema exists()
zajęłaby więcej niż 20 sekund.
Moje pytanie brzmi: co może spowodować tę nieoczekiwaną zmianę w zachowaniu, biorąc pod uwagę, że testowana aplikacja jest dokładnie taka sama, maszyna jest dokładnie taka sama, a skrypty są dokładnie takie same. Jedynie metoda, o której mogę powiedzieć, jest inna niż uruchamianie skryptów. Również istotne dla tej dyskusji: w obu przypadkach używana jest ta sama maszyna JVM.
Nawet wskazówka w odpowiednim kierunku byłaby bardzo doceniana, ponieważ trudno jest mi zrozumieć ten problem.
Którą wersję RFT używasz? Jeśli dobrze pamiętam, rft <8.5.0 nie jest oficjalnie wspierany w VMach –
Obecnie używa się RFT 8.6.0.3, ale dziękuję za pytanie, ponieważ nawet nie myślałem, aby to sprawdzić. – JumboN