Angularjs 如何在paragrator.js中测试当前输入选择范围/光标位置?

Angularjs 如何在paragrator.js中测试当前输入选择范围/光标位置?,angularjs,automated-tests,protractor,e2e-testing,Angularjs,Automated Tests,Protractor,E2e Testing,我只是学习如何创建angular.js指令。 我使用双向绑定的selectionRange控件为输入编写简单指令。 当范围变量改变时-输入中的选择范围也会改变 如何使用dragrator.js测试此行为? 我找不到任何方法来获取当前输入的选择范围/光标位置,甚至无法获取所选文本 您可以在此处找到并使用我的指令: Todo我想在这里实现的目标: 当您使用下面的表单更改$scope数据时,输入选择将更改。 我只想用test来描述这种行为,不知道如何在量角器环境中获取当前的selectionRang

我只是学习如何创建
angular.js
指令。
我使用双向绑定的
selectionRange
控件为输入编写简单指令。
当范围变量改变时-输入中的选择范围也会改变

如何使用
dragrator.js
测试此行为?
我找不到任何方法来获取当前输入的
选择范围
/
光标位置
,甚至无法获取所选文本


您可以在此处找到并使用我的指令:
Todo
我想在这里实现的目标:

当您使用下面的表单更改$scope数据时,输入选择将更改。
我只想用test来描述这种行为,不知道如何在量角器环境中获取当前的
selectionRange

指的是我最近在@trincot的帮助下解决的问题:

expect(browser.executeScript("return arguments[0].value.substring(arguments[0].selectionStart, arguments[0].selectionEnd);", elm.getWebElement())).toEqual("selected part of the input text");

这里的
selectionStart
selectionEnd
用于获取输入中当前选定的文本。

请您制作一个可复制的示例(可能是插页)?谢谢。@alecxe,你能给我看一下任何带有
量角器
环境的现成的量角器吗?我简直无法想象怎么写……不,你提供的演示就是我想要的。谢谢。请解释一下
getWebElement
。它返回通常的
HTMLElement
?@vp_arth
elm
在本例中是
ElementFinder
实例-由
element()
调用返回的内容
getWebElement()
如果我们将元素传递给脚本,现在需要调用它-它基本上从
ElementFinder
返回一个常规的
HTMLElement
。希望它有意义。@vp\u arth我还做了一个示例,这样在将元素作为参数传递到
executeScript()
时就不需要显式调用
getWebElement()
。但问题仍然存在。量角器测试用例读取-它可能比文档更有用:)