我正在构建Protractor测试,我正在寻求重构一些代码。
这行代码运行良好:
element.all(by.css('div.modal-content ly-input input')).first().sendKeys("Workflow 1");
然后我尝试这样做:
var name = element(by.css('div.modal-content ly-input'));
element(name).all(by.css('input')).sendKeys("Workflow 1")
最后一行代码有问题,因为我得到了"Failed: Invalid locator" error.
有谁知道如何引入name
变量并在最后一行代码中使用它?
罗伯特
答案 0 :(得分:0)
道歉,我终于明白了: name.all(by.css('input'))。sendKeys(“Workflow 1”)
答案 1 :(得分:0)
我看到你弄清楚了。以下是我编写sendKeys的方法,以便在阅读代码时更加清晰:
var name = 'Workflow 1';
var input = element.all(by.css('div.modal-content ly-input'));
input.first().sendKeys(name);
// or if you have multiple inputs in that element above
var workflowData = {
name: 'Workflow 1',
description: 'a workflow',
type: 'simple'
}
var input = element.all(by.css('div.modal-content ly-input'));
input.get(0).sendKeys(workflowData.name);
input.get(1).sendKeys(workflowData.description);
input.get(2).sendKeys(workflowData.type);