PhantomJS 中 QUnit 测试的可变范围和继承

Variable scope and inheritance for QUnit tests in PhantomJS

我有一些代码似乎适用于所有环境,但在 PhantomJS 中 运行 除外,我将其用于无头 CI 环境中的测试目的。

代码如下:

function NumericalAxis (variable1, variable2) {
    do something with variable2
    GenericAxis.call(this, variable1);
}

NumericalAxis.prototype = Object.create(GenericAxis.prototype);

Object.assign(NumericalAxis.prototype, {
    init: function(...) {
        do something
    },

    ...
});

当在 PhantomJS 中 运行 时,我得到一个 "Can't find variable: GenericAxis"。任何人都可以启发我一些我可能应用的不良做法,或者 PhantomJS 评估代码的一些模糊方式吗?

谢谢,

瑞安

问题出在 PhantomJS 不支持的 Object.assign,因为它是 ES2015

的一部分

参见:https://github.com/wallabyjs/public/issues/579