分度器テストでは、私は<input type="text"/>
値が事前に入力されているので、その値を消去して新しい値を入力したいと思います。理想的には私はただのようなことを言うことができるでしょう
// Some way to select all the text in the text box so `
// sendKeys` will type over it.
element(by.css("input.myInput")).selectAll();
element(by.css("input.myInput")).sendKeys("my new value");
しかし、selectAll
は存在せず、APIドキュメントで役立つものは何も見つかりません。
何か案は?
私はclear
を使用して、テストの1つでこれを実行し、魅力のように機能します;)
element(by.css("input.myInput")).clear();
それを見つけた:
var ctrlA = protractor.Key.chord(protractor.Key.CONTROL, "a");
element(by.css("input.myInput")).sendKeys(ctrlA);
「すべて選択」のキーボードショートカットであるCtrl + Aを送信します。
Glepretreと同様に、私のソリューションには「Name」という名前の入力フォームコントロールが与えられますが、これは私にとってはうまくいきました
newValue = getNewValue();
element(by.css('input[formControlName=Name]')).clear();
element(by.css('input[formControlName=Name]')).sendKeys(newValue)
.then(function () {....});
入力をダブルクリックし、BackSpaceをクリックします
browser.actions().doubleClick(input).sendKeys(Key.BACK_SPACE).perform();
または、入力をダブルクリックして新しい値を設定すると、以前の値が置き換えられます
browser.actions().doubleClick(input).sendKeys('9999').perform();