Was bedeutet es, wenn busterJS sagt, dass TestHelpers in Node Will be Require'd sind?

StackOverflow https://stackoverflow.com//questions/12682125

  •  12-12-2019
  •  | 
  •  

Frage

Aus der Dokumentation (Hervorhebung von mir)

Bibliotheksdateien zum Laden in Skript-Tags im Browser. Diese Einstellung sollte normalerweise nicht für Knotenläufe verwendet werden.Wenn ja, werden die Dateien vorhanden sein require'd. Der Wert ist ein Array von Dateinamen und/oder Glob-Mustern.Dateien werden in der angegebenen Reihenfolge geladen.Es kann Duplikate enthalten, z.B.["test/lib/core.js", "test/lib/*/.js "] werden Dateien nur einmal geladen.Testhelpatoren werden nach Bibliotheken und Quellen geladen, jedoch vor Tests.

Was bedeutet das genau?Wenn sie es bekommen require'd, als was werden sie aufgenommen?Unter welchem ​​Variablennamen?Ich habe einige globale Methoden (testSetUp Und testTearDown), die ich zwischen Tests gerne wiederverwende.Demnach kann ich diese Methoden nur zwischen Tests verwenden, wenn ich im Browser teste, nicht, wenn ich in Node teste.

Hier ist meine Konfigurationsdatei:

var config = module.exports;

config['Browser Tests'] = {
    rootPath: '../',
    environment: 'browser',
    sources: [
        'src/*.js'
    ],
    deps: [
        'submodules/d3/d3.v2.min.js'
    ],
    testHelpers: [
        'test/helpers/*.js'
    ],
    tests: [
        'test/test_*.js'
    ]
};

config["Node tests"] = {
    rootPath: '../',
    environment: "node",
    tests: [
        'test/test_*.js'
    ]
};
War es hilfreich?

Lösung

Aus der Dokumentation geht hervor, dass die Dateien zwar benötigt werden, ihre Exporte jedoch verloren gehen.Sofern Ihre Helfer also keine globalen Objekte ändern, ist dies auf dem Knoten nicht sinnvoll.

Es steht Ihnen jedoch frei, gemeinsam genutzte Helfer in einer separaten Datei abzulegen und sie selbst zu benötigen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top