Protractor: Browser busur derajat.sleep() tidak dieksekusi.

Dibuat pada 1 Jul 2016  ·  3Komentar  ·  Sumber: angular/protractor

Di bawah ini seperti yang Anda lihat bahwa browser.sleep seharusnya dieksekusi jika klien adalah XYZ, tetapi tetap tidak dieksekusi. Jika saya meletakkan console.log setelah pernyataan browser.sleep, pernyataan itu akan dieksekusi (saya dapat melihat pernyataan tersebut) tetapi browser.sleep tidak benar-benar menunggu meskipun berapa lama waktu tidur saya bertambah.

Mengapa browser.sleep tidak berfungsi? Bagaimana cara membuatnya menunggu jika klien XYZ?

           if (testproperties.client == 'ABC'){
                browser.ignoreSynchronization = false;
                browser.waitForAngular();
                browser.ignoreSynchronization = true;    
            }
            else if (testproperties.client == 'XYZ'){
                browser.sleep('35000');
            };

Komentar yang paling membantu

@gamecheck80 hapus tanda kutip tunggal di

// use like this
browser.sleep(35000);

Semua 3 komentar

@gamecheck80 hapus tanda kutip tunggal di

// use like this
browser.sleep(35000);

Sangat cepat untuk klarifikasi: browser.sleep mengembalikan janji. Melihat ini dengan cermat:

  • browser.sleep memanggil webdriver.sleep
  • webdriver.sleep memanggil aliran kontrol untuk melakukan batas waktu
  • timeout memanggil penundaan yang pada akhirnya memanggil metode setTimeout dan ini bisa berupa string selama string itu adalah angka.

browser.sleep('35000') adalah masukan yang dapat diterima.

Karena browser.sleep mengembalikan sebuah janji, itu hanya akan tampak berfungsi jika Anda menunggu janji itu selesai.

describe('browser', function() {
  it('should sleep', function() {
    browser.get('http://angularjs.org');

    // does not work
    // browser.sleep(10000);
    // console.log('waited 10 seconds?');
    // this does not work and "waited 10 seconds?" appears immediately after navigating

    // after sleeping then print "waited 10 seconds"
    browser.sleep(10000).then(function() {
      console.log('waited 10 seconds');
    });
  });
});

Semoga ini membantu. Untuk bantuan lebih lanjut, ajukan pertanyaan dukungan Anda di StackOverflow , daftar diskusi Google Group , atau Gitter . Untuk informasi lebih lanjut, silakan referensi https://github.com/angular/protractor/blob/master/CONTRIBUTING.md#questions

Terima kasih!

browser.sleep(10000).then(function() {
console.log('menunggu 10 detik');
});
Menggunakan ini dengan Angular 6 dan busur derajat versi 5.4.1 tidak berfungsi, setidaknya itulah yang saya lihat

Apakah halaman ini membantu?
0 / 5 - 0 peringkat