我有一个像这样的对象:
$scope.project = {name: 'whatever', description: 'blabla', another: 'another'};
为了调试这个问题,我进入了repl模式并尝试查看“项目”有什么。当我如下定义项目变量并调用它时,它返回我的对象,但是当我尝试访问其键(project.name)时,我未定义。如果我做Object.keys(project)我正在获取页面对象方法,例如click,getAttribute等。
关于如何访问原始对象密钥的任何想法?
侧面:
<h1 id="foo">{{project.name}}</h1>
测试方:
var project = element(by.id('foo')).evaluate('project');
evaluate
使用executeScript
幕后。它返回一个ElementFinder
解析为您要查找的对象的:
var project;
element(by.id('foo')).evaluate('project').then(function(value) {
project = value;
});
该文件说:
解析为每个基础元素的评估表达式。结果将像在webdriver.WebDriver.executeScript中一样被解析。总而言之-原语将按原样解析,函数将转换为字符串,元素将作为WebElement返回。
另外,请检查“量角器测试”中的“访问角度”
编辑:语法错误
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句