首页 > 解决方案 > 在 Protractor Cucumber 框架中使用 await/done

问题描述

我正在使用下面的代码片段来打印元素 id 中的内容。但是,内容没有按预期打印。在这篇文章中,我被要求使用 await/done。我对这个框架很陌生,想知道如何使用它。

Protractor console.log 中的空响应

var {defineSupportCode} = require('cucumber');
var chai = require('chai');
var chaiAsPromised = require('chai-as-promised');
chai.use(chaiAsPromised);
var expect = chai.expect;

defineSupportCode(function ({And, But, Given, Then, When}) {

    Given(/^I launch Chrome browser$/, function () {

    var elm = element(by.id('the-basics'));
        elm.getText().then(function(txt) {
            console.log("txt: " + txt);
        });

}
}

标签: protractorcucumberjs

解决方案


异步/等待的示例

Given('I open Google`s search page', async () => {
  await client.url('http://google.com');
});

或 done() 函数

Given(/I click something/, (done) => {
  // do stuff
  done();
}

推荐阅读