2016-08-09 32 views
5

Debuguję testy kątomierza w Webstorm. Kiedy dodać ten kod:Kątomierz: wypisuje znalezione właściwości elementu w konsoli podczas debugowania

var title = element(by.xpath('//div[@class="title"]')); 
title.getText().then(function (text) 
     { 
      console.log(text); 
     }); 
expect(title.getText()).toEqual('Opportunities'); 

I wydrukowany w konsoli żądany tekst.

Jak wykonać to bezpośrednio w konsoli?
Kiedy dodać przerwania na expect linii 6 część console.log(text); nie jest drukowany i otrzymuję ten wyjścia w konsoli, gdy próbuję uzyskać tekst Elem:

> ‌‌title.getText() 
< ‌ElementFinder 
> ‌‌title.getText().then(function (text) 
{ 
console.log(text); 
}); 
< ManagedPromise 

Czy jest możliwe, aby znaleźć elementy i wydrukować właściwości w konsola debugowania?

Odpowiedz

3

Komendy Selenium są wykonywane asynchronicznie, co oznacza, że ​​wszystkie wywołania są kolejkowane i nie są jeszcze wykonywane, jeśli zatrzymasz wykonywanie w wierszu oczekiwania.

Co więcej, prawdopodobnie nie można uzyskać właściwości z konsoli. Na przykład wywołanie .getText() w konsoli spowoduje połączenie w kolejce, ale nie zostanie wykonane, ponieważ przepływ kontrolny nie jest uruchomiony.