我已经注释掉了尝试读取文件的行,有没有办法可以从protractor.config.ts
内的文件中检索值而不必作为命令行参数传递?
protractor.config.ts
import { } from 'jasmine';
import { Config } from 'protractor';
//import fs = require('fs'); // Cannot find module 'fs'
//import param1 = require('test/e2e/param1.json'); // Cannot find module 'test/e2e/param1.json'
//import param2 = require('test/e2e/param2.json'); // Cannot find module 'test/e2e/param2.json'
export let config: Config = {
rootElement: 'my-app',
framework: 'jasmine',
capabilities: {
browserName: 'chrome'
},
specs: ['test/e2e/**/*.js'],
seleniumAddress: 'http://localhost:4444/',
params: {
param1: '13bf8265-06d6-45c3-97fc-0d6da7b6b597',
param2: '14490027-e55b-4739-a5a9-5c091c5d4a72'
}
};
测试/ E2E / param1.json:
{
"param1": "13bf8265-06d6-45c3-97fc-0d6da7b6b597"
}
测试/ E2E / param2.json:
{
"param2": "14490027-e55b-4739-a5a9-5c091c5d4a72"
}
答案 0 :(得分:3)
您是否尝试过按如下方式添加import语句:
import * as file1 from './test/e2e/param1.json'
import * as file2 from './test/e2e/param2.json'
console.log(file1.param1)
如果您发现错误说明:Cannot find module 'test/e2e/param1.json'
那么您需要创建/更新您的TypeScript
定义|声明文件,请参阅docs。
将以下内容添加到您的定义中|声明文件:
declare module "*.json" {
const value: any;
export default value;
}
如上所示,您导入的文件将完美无缺。