首页 > 解决方案 > JS 功能在同一文件夹下的所有文件中可用

问题描述

我在 Mocha JS 中编写 API 测试,有两个文件:00_auth.js 和 utils.js 我想在 utils 中创建函数,该函数在同一文件夹中的其他文件中可用

实用程序.js

utils = {
   randomStringGenerator: function (){
    return Math.random().toString(36).replace(/[^a-z]+/g, '').substr(0, 7);
  }
};

并测试js

const chai = require('chai');
const mocha = require('mocha');
const config = require('../config');
const request = require('supertest')(url);
const assert = chai.assert;
const utils= require('./utils')



randomFirstName=utils.randomStringGenerator();
//randomLastName=stringGenerator();
randomMail=randomFirstName+'@'+randomLastName+'.pl';
auth_token = ''



describe('0_auth', () => {
    it('should return token for unauthorized user', function(done) {
    request
      .post('/rest/v1/auth/get-token')
      .set(config.headers) 
      .send({
          "deviceUuidSource": "DEVICE",
          "source" : "KIOSK",
          "deviceUuid" : "uniquedeviceuuid"
      })
      .end(function(err,res){
        assert.equal(res.status,200)
        assert.property(res.body, 'token')
        assert.isString(res.body.token)
        auth_token=res.body.token
        console.log('unathorized token: '+auth_token) 
        done(err);
      });       
   });
});

我从javascript 中的全局函数中获取了这个解决方案,但它不起作用,给我类型错误:utils.randomStringGenerator is not a function

标签: javascriptfunction

解决方案


好的,知道了,谢谢

module.exports.randomStringGenerator = function (){
    return Math.random().toString(36).replace(/[^a-z]+/g, '').substr(0, 7);
  }


推荐阅读