出于开发和调试的目的,了解我在以下方法中提出的完整CSS链是非常好的:
divElm.element(by.css("article")).element(by.css("tbody > tr")).then(function(elm) {
// is there a way to know here what is the "CSS chain" of 'elm'?
});
Run Code Online (Sandbox Code Playgroud)
如果我调试elm
我看到一个locator
属性:
locator_: { using: 'css selector', value: 'tbody > tr' },
Run Code Online (Sandbox Code Playgroud)
但那只是链中最后一个元素的定位器.
拥有所有内容非常有用,例如:divElm, article, tbody > tr
通过这种方式,我可以在页面上手动调试,以查看元素是否真的存在.
更新:我真正需要的是,当一个量角器选择器期望失败时(例如使用isPresent()方法),我得到的错误只显示链中的最后一个选择器.如果显示整个链条,那将非常方便.
我对Elisp有一个(可能)愚蠢的问题.我希望函数返回t
或nil
根据when
条件.这是代码:
(defun tmr-active-timer-p
"Returns t or nil depending of if there's an active timer"
(progn
(if (not (file-exists-p tmr-file))
nil
; (... more code)
)
)
)
Run Code Online (Sandbox Code Playgroud)
但我有一个错误.我不确定如何使函数返回一个值...我已经读取了一个函数返回最后一个表达式结果值,但在这种情况下,我不想做类似的事情(PHP混乱警告):
// code
if ($condition) {
return false;
}
// more code...
Run Code Online (Sandbox Code Playgroud)
也许我错过了这一点,功能编程不允许这种方法?