如何在量角器工具中获取用户输入

时间:2018-01-11 12:29:41

标签: protractor

实际上我想从运行脚本的用户那里获得用户输入。我不想在脚本中硬编码testdata路径。例如,当我运行脚本来使用量角器和javascript测试angularjs时。用户应该能够提供testdata的路径,以便我可以在脚本中使用该变量。

1 个答案:

答案 0 :(得分:1)

您可以通过从命令行传入params.testData值来执行此操作。

protractor conf.js --params.testData=D:\path\to\testdata.xlsx

然后在测试中,您将使用全局browser.params对象引用它。您还需要使用fs来读取文件并处理数据。老实说,如果你为测试数据而不是.json创建一个.xlsx文件可能会更容易,但看起来有些库可以帮助你解析xlsx文件,如果你必须坚持下去的话接着就,随即。查看this答案以获取一些示例。

此代码不会按原样运行,但基本思想将是这样的:

before(() => {
  const testDataPath = browser.params.testData;

  fs.readFile(testDataPath, (err, data) => {
    if(err) { // fail? };

    const testData = data;

    // do some other stuff with test data ...
  });       
}

您需要对.xlsx文件中的数据进行一些额外处理才能使其格式正确,但这有助于您找到正确的道路。