Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 需要使用jasmine获取文件路径_Javascript_Node.js_Jasmine_Protractor - Fatal编程技术网

Javascript 需要使用jasmine获取文件路径

Javascript 需要使用jasmine获取文件路径,javascript,node.js,jasmine,protractor,Javascript,Node.js,Jasmine,Protractor,我有一个需要获取文件名的要求 我见过jasmine.getEnv().currentSpec.description,它返回spec.jsdescription。 类似地,我需要获取spec.js完整路径。可以获取文件路径吗?jasmine不提供运行规范的文件的引用。env(来自getEnv())对象仅提供有关规格和套件的信息,而不提供文件的信息 通过利用文件本身中的全局路径,可以获得对文件完整路径的引用。例如: const jasmine = require('jasmine-node');

我有一个需要获取文件名的要求

我见过
jasmine.getEnv().currentSpec.description
,它返回
spec.js
description。
类似地,我需要获取
spec.js
完整路径。可以获取文件路径吗?

jasmine
不提供运行规范的文件的引用。
env
(来自
getEnv()
)对象仅提供有关规格和套件的信息,而不提供文件的信息

通过利用文件本身中的全局路径,可以获得对文件完整路径的引用。例如:

const jasmine = require('jasmine-node');
console.log(__filename);

describe('description for spec', () => {
  it('should do stuff', () => {
    console.log(jasmine.getEnv());
  });
});
下面是
env
对象的摘要:

{ currentSpec:
   { id: 0,
     env: [Circular],
     suite:
      { id: 0,
        description: 'description for spec',
        queue: [Object],
        parentSuite: null,
        env: [Circular],
        before_: [],
        after_: [],
        children_: [Object],
        suites_: [],
        specs_: [Object],
        exclusive_: 0 },
     description: 'should do stuff',
     queue:
      { env: [Circular],
        ensured: [Object],
        blocks: [Object],
        running: true,
        index: 0,
        offset: 0,
        abort: false,
        onComplete: [Function] },
     afterCallbacks: [],
     spies_: [],
     results_:
      { totalCount: 0,
        passedCount: 0,
        failedCount: 0,
        skipped: false,
        items_: [],
        description: 'should do stuff' },
     matchersClass: null,
     exclusive_: 0 },
  currentSuite: null,
  currentRunner_:
   { env: [Circular],
     queue:
      { env: [Circular],
        ensured: [Object],
        blocks: [Object],
        running: true,
        index: 0,
        offset: 0,
        abort: false,
        onComplete: [Function] },
     before_: [],
     after_: [],
     suites_: [ [Object] ] },
  reporter: { subReporters_: [ [Object] ] },
  updateInterval: 250,
  defaultTimeoutInterval: 5000,
  lastUpdate: 0,
  specFilter: [Function],
  nextSpecId_: 1,
  nextSuiteId_: 1,
  equalityTesters_: [],
  exclusive_: 0,
  matchersClass: [Function] }

这个答案缺少信息。需求在哪里得到定义?在将其与karma一起使用时,上述内容在放置于karma.conf.js中时有效,但在放置于spec.js中时无效。{“message”:“afterAll中引发了一个错误\n未捕获的语法错误:无效的速记属性初始值设定项\n未捕获的引用错误:未定义require”,“str”:“afterAll中引发了一个错误\n未捕获的语法错误:无效的速记属性初始值设定项\n捕获的引用错误:未定义require”}