You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Protractor非Angular应用下页面对象模型(POM)中sendKeys方法失效问题

问题根因
  • 方法传参缺失:你定义的setWelcomemessage方法没有声明形参,调用时传入的文本没有被传递给sendKeys方法,等价于执行了无参数的sendKeys(),因此不会输入任何内容,也不会触发报错。
  • 焦点激活步骤缺失:你直接写在测试脚本中的代码额外执行了click()操作激活输入框,部分自定义表单控件需要先获得焦点才能正常响应输入事件,POM中的对应方法没有加入该步骤。
  • 冗余代码问题:POM中重复定义了两次clearWelcomemessage方法,属于无效冗余代码,可直接删除重复定义。
修复后的POM代码
var txtWelcomemessage = element(by.css("input[name='form_component_data[AgentsSettings][agent][chat_welcome_msg]']"));

this.clearWelcomemessage = function(){
    txtWelcomemessage.clear();
};

this.setWelcomemessage = function(message){
    // 先激活输入框获取焦点
    txtWelcomemessage.click();
    // 将传入的文本参数传入sendKeys
    txtWelcomemessage.sendKeys(message);
};

修复后直接运行原有测试脚本即可正常完成输入操作。

内容的提问来源于stack exchange,提问作者Devy16

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 09:45:02