Spectron测试顺序操作

时间:2017-05-04 16:22:47

标签: javascript testing electron spectron

我正在用光谱测试电子应用。我在文档中找到了如何获取窗口数量的例子,这非常简单。但我正在寻找的是在点击另一个元素后如何检查一个元素的状态。在这里,我试图检查应用程序是否在我最小化后可见。但是这个测试总是通过,无论是真是假。

     it('should minimize the application', () => {
        return this.app.client.click('.minimize').then(() => {
          this.app.client.browserWindow.isVisible().then((isVisible) => {
            expect(isVisible).to.be.equal(true);
          });
        });
      })

我正在使用带有chai断言的mocha。

请告知我在点击其他元素后如何检查应用程序(或特定元素是否可见)。

2 个答案:

答案 0 :(得分:3)

您需要return回调函数的结果。

it('should minimize the application', () => {
  return this.app.client.click('.minimize').then(() => {
    return this.app.client.browserWindow.isVisible().then((isVisible) => {
      return expect(isVisible).to.be.equal(true);
    });
  });
});

或者,删除包裹花括号,arrow function将自动返回结果。

it('should minimize the application', () =>
  this.app.client.click('.minimize').then(() => 
    this.app.client.browserWindow.isVisible().then((isVisible) => 
      expect(isVisible).to.be.equal(true);
    );
  );
);

我认为这不是那么可读,但那可能只是我。

答案 1 :(得分:0)

您可以链接您的承诺

我这样使用

Return this.app.client.click('.minimize').browserWindow.isVisible().should.be.equal(true)