当前位置: 首页 > 知识库问答 >
问题:

节点正弦存根链式函数

梁丘远航
2023-03-14

所以我有一段代码

General.helpers.elementContains = function(selector, value) {
return driver.findElement(webdriver.By.css(selector)).getInnerHtml().then(function(contents) {
  assert.equal(contents, value);
});

};

我想去掉getInnerHtml函数。我目前已经剔除了driver.findElement和webdriver。By.css函数。我的driver.findElement函数返回一个我使用节点模块sinon-stub-promise的promise。

sinon.stub(driver, 'findElement').returnsPromise();
sinon.stub(webdriver.By, 'css');

然而,当运行测试时,我不确定如何存根.getInnerHtml函数,我得到一个错误:

driver.findElement(...).getInnerHtml is not a function

我试图改变driver.findElement返回一个getInnerHtml方法,它被存根并返回一个值,但我似乎无法破解这个。

sinon.stub(driver.findElement).returns({getInnerHtml: sinon.stub().returns(value)})

任何帮助将不胜感激。

共有1个答案

赵立果
2023-03-14

我已经想出了解决这个问题的办法:

存根promise

promise = sinon.stub().returnsPromise();
sinon.stub(driver, 'findElement').returns({getInnerHtml: promise});

这对于我来说是有效的,因为getInnerHtml返回一个promise,而driver.findElement返回一个带有getInnerHtml的对象,其中有一个函数返回一个promise。

 类似资料:
  • 我有一个依赖于另一个函数的函数,而不是测试依赖关系,我只想测试依赖函数的特定结果。然而,当我存根函数时,什么都不会发生,返回的结果就好像我从来没有存根函数一样。 示例代码:

  • 问题是,普通点击或长点击,我只得到“正弦”函数,即使我已经编码了asin函数,我不知道为什么,但它似乎忽略了它,给出了普通点击函数。(同样,在longClicking上,它没有给出我希望的弧正弦函数,而是简单地给出了正常的函数“sine”,这与正常的OnClick函数相同。) 以下是正常的OnClick: /////////唯一不同的是上面的一行(这里是Sin,下面是ASin)edittext.s

  • 我被问到这个面试问题。我不确定它的正确答案是什么(以及答案背后的推理):

  • 所以我环顾了一下网络,在stackoverflow中有几个问题是定义: 通常,内部节点是任何不是叶子的节点(没有子节点) 非叶/非末端/内部节点-至少有一个度不等于0的子节点或后代节点 据我所知,它是一个节点,而不是一片叶子。 我即将得出结论,根也是一个内部节点,但它的定义似乎有些模糊,如图所示: 二元搜索树中的“内部节点”是什么? 正如这张精彩的图片所示,内部节点是位于树根和树叶之间的节点 如果

  • 双链表节点是在main函数中创建的。Ender和header已定义。在删除节点函数处中断-ender为空。 释放最后一个和第一个输入的内存的最佳方法是什么,即:删除:233,A和888,F?

  • 当我在main中调用readFile方法时,我得到了一个错误,即我的readFile方法没有定义。这怎么可能? 这是我的主要驱动程序: