Selenium IDE - 5 saniye bekleme komutu


90

Firefox için Selenium IDE kullanıyorum ve bir bekleme komutu arıyorum. Benim sorunum, gömülü bir dış haritaya sahip bir web sitesini test etmek istemem. Bu harici haritanın yüklenmesi 3-5 saniyeye ihtiyaç duyar.

Komutlarım:

open /Page/mysite.html
//Wait Command? (5 seconds)
ClickAndWait link=do something

Yanıtlar:


107

Duraklat komutunu kullanın ve Hedef alanına milisaniye sayısını girin.

Hızı en hızlıya ayarlayın (Eylemler -> En Hızlı), aksi takdirde çalışmayacaktır.


Teşekkür ederim! Komutu ekledim ama Selenium durmuyor. Komut = duraklat, Değer = 10000
LaPhi

53
TargetBunun yerine kullanın Value. Komut = Duraklat, Hedef = 1000.
khairul

1
@Khairul bu yorumu eklediğinize sevindim, neden pause()işe yaramayacağı konusunda beni deli ediyor !
cchana

Hızın duraklatma komutuyla bir ilgisi yoktur, bunun yerine @Khairul'un dediği gibi: Hedefe koyun.
Mendhak

Bir test paketi çalıştırırken bir test senaryosunun sonunda durduğunuzda çalışmaz
Alfonso Fernandez-Ocampo

85

Bu, işleri 5 saniye geciktirecek:

Komut: duraklama
Hedef: 5000
Değer:

Bu, işleri 3 saniye geciktirecek:

Komut: duraklat
Hedef: 3000
Değer:

Dokümantasyon:

http://release.seleniumhq.org/selenium-core/1.0/reference.html#pause

görüntü açıklamasını buraya girin görüntü açıklamasını buraya girin


2
Öyleyse, 5000'i 5 saniye için ayarla
Ripon Al Wasim

1
Milisaniyeler içinde hedefi beklemesi gereken değer haline getirmeleri delilik. Sevdim. Hedefe değeri girmeye bile çalışmadığım için bunu gönderdiğiniz için teşekkür ederim.
John Z

6

İle çalışan kişiler için ant, ben 5 saniyelik bir duraklama göstermek için bunu kullanın:

<tr>
    <td>pause</td>
    <td>5000</td>
    <td></td>
</tr>

Yani target: 5000ve valueboş. Referansın belirttiği gibi:

pause (waitTime)

Argümanlar:

  • waitTime - uyumak için geçen süre (milisaniye cinsinden)

Belirtilen süre kadar bekleyin (milisaniye cinsinden)



1

Bu, C # 'da aradığınız şeyi yapacak (WebDriver / Selenium 2.0)

var browser = new FirefoxDriver();
var overallTimeout = Timespan.FromSeconds(10);
var sleepCycle = TimeSpan.FromMiliseconds(50);
var wait = new WebDriverWait(new SystemClock(), browser, overallTimeout, sleepCycle);
var hasTimedOut = wait.Until(_ => /* here goes code that looks for the map */);

Ve asla Thread.Sleep kullanmayın çünkü testlerinizi güvenilmez kılar


Selenium 2'de çok daha iyi bir seçenek
craastad

0

Duraklatma komutu doğrudan ide'de html formatında kullanılabilir.

Java veya C kullanıyorsanız, Thread.sleep (5000) kullanabilirsiniz. Zaman milisaniye cinsindendir. Diğer diller "sleep 5" veya time.sleep (5) destekler. sadece belirli bir süre beklemek için birden fazla seçeneğiniz var.


2
Thread.Sleep asla iyi bir fikir değildir ve bu yüzden Selenium bekleme ilkelleri sağlar. Bunları kullanırsanız, çok daha yüksek bir zaman aşımı değeri belirleyebilirsiniz, bu da testleri yavaşlatmadan daha güvenilir hale getirir, çünkü durum gerektiği kadar sık ​​değerlendirilebilir, örn. her 50 ms'de bir.
Pawel Pabich

Thread.sleep'deki cevabım sadece ide'de nasıl bekletileceği sorusuna cevap vermekle ilgilidir. Html'den java'ya veya ide'de c'ye dönüştürdüğünüzde duraklama thread.sleep'ye çevrildiğinde.
rattlerbred

0

Komuttan önce clickAndWaitaşağıdaki kodu ekleyin, böylece komut dosyası belirli bir bağlantının görünmesini bekleyecektir:

   <tr>
        <td>waitForVisible</td>
        <td>link=do something</td>
        <td></td>
    </tr>

Duraklatma yerine bekleme komutlarını kullanma uygulaması çoğu zaman daha verimli ve daha kararlıdır.


0

Bu, bağlantınız görünene kadar bekleyecek ve ardından tıklayabilirsiniz.

Command: waitForElementPresent Target: link=do something Value:


0

Test ettiğim site için bulduğum işler şu:

waitForCondition | selenium.browserbot.getUserWindow (). $. active == 0 | 20.000

Klendathu


0

Chrome'da, "Selenium IDE" için de duraklamaması için mücadele ediyordum. Aşağıdaki gibi verirseniz duracaktır:

  • Komut: duraklat
  • Hedef: boş
  • Değer: 10000

Bu 10 saniye duraklayacaktır.


1
Hedef 10000 olmalı ve değer boş olmalıdır
Sirmyself

Hangi tarayıcının eklentisini denediğinizden emin değilim, ancak bu Chrome'da benim için iyi çalıştı. Ayrıca hangi uzantıyı kullandığınıza da bağlıdır.
TechSingh
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.