Saya mencoba membaca nilai teks dari elemen pengikat. Saya telah menggunakan fungsi getText() untuk membaca nilai teks elemen tetapi tidak berfungsi. Apakah ada cara lain untuk melakukannya?
ptor = busur derajat.getInstance();
ptor.get('http://www.angularjs.org');
ptor.findElement(protractor.By.input("yourName")).sendKeys("Julie");
var salam = ptor.findElement(busur derajat.By.binding("{{namaanda}}!"));
console.log(salam.getText());
Saya mengalami masalah yang sama. Saya baru saja menjalankan dan menjalankan busur derajat tetapi sepertinya saya tidak bisa mengeluarkan data dari elemen input. Tes saya adalah:
it('should allow text entry into the userName field', function(){
userNameInput = ptor.findElement(protractor.By.input('user.userName'));
userNameInput.sendKeys(testUserName);
expect(userNameInput.getText()).toEqual(testUserName);
});
tetapi tes gagal dengan:
1) Tes Masuk Masuk harus memungkinkan entri teks ke bidang NamapenggunaPesan:Diharapkan '' sama dengan 'xacttester'.
Saat saya menonton tes (dengan memperlambatnya dengan ptor.driver.sleep(2000)
), saya melihatnya memasukkan teks ke dalam bidang, tetapi kemudian ketika ia memanggil getText()
, ia mengembalikan string kosong.
Adakah yang punya ide tentang apa yang saya lakukan salah?
@vishalshivnath Silakan periksa dokumentasi untuk informasi tentang cara kerja webdriver dan busur derajat - tindakan busur derajat mengembalikan janji, jadi Anda mungkin adalah objek janji.
@tennisgent Ada kekhasan webdriver aneh yang getText() selalu kosong untuk elemen <input>
. Coba lakukan userNameInput.getAttribute('value')
sebagai gantinya.
apakah boleh menggunakan $ daripada browser.findElement',
it('should return the same result as browser.findElement', function() {
browser.get('index.html');
// var e = element(by.id('new_todo'));
var e = $('#new-todo');
e.sendKeys("foo");
expect(e.getAttribute('value')).toEqual(
"foo")
});
Komentar yang paling membantu
@vishalshivnath Silakan periksa dokumentasi untuk informasi tentang cara kerja webdriver dan busur derajat - tindakan busur derajat mengembalikan janji, jadi Anda mungkin adalah objek janji.
@tennisgent Ada kekhasan webdriver aneh yang getText() selalu kosong untuk elemen
<input>
. Coba lakukanuserNameInput.getAttribute('value')
sebagai gantinya.