Ich versuche, ein Enzym zu verwenden, um mein React Native-Projekt zu testen, und habe die Installationsanweisungen befolgt.So testen Sie das Projekt, wenn Module von Drittanbietern nicht transpiliert werden
https://github.com/airbnb/enzyme/blob/master/docs/guides/react-native.md
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "mocha --require react-native-mock/mock.js --compilers js:babel-core/register --recursive test/**/*.js"
},
Dies funktioniert gut, und mein eigener Code richtig transpiled, aber wenn ich ein Module enthalten, die ihren Code nicht transpile (https://github.com/aksonov/react-native-router-flux zum Beispiel), verweigern meine Tests, da es Fehler laufen an die Importanweisungen in diesen Modulen.
Wie kann ich diese Module babel transpilieren lassen oder gibt es eine andere Möglichkeit, meine Tests auszuführen?
aktualisieren
Es scheint, dass nicht transpiled 3rd-Party-Module sind relativ häufig mit Mutter reagieren, da Mutter Reaktion selbst nicht transpiled wird.
Die Lösung scheint eine Kombination von erzwungenem transpiling und der Verwendung von react-native-mock zu sein. https://github.com/facebook/react-native/issues/5392
Allerdings habe ich weitere Probleme mit reactive-router-flux aufgrund Navigationsexperimental nicht verspottet.
Related Links sind:
https://github.com/lelandrichardson/react-native-mock/issues/23 https://github.com/lelandrichardson/react-native-mock/issues/22 https://github.com/lelandrichardson/react-native-mock/pull/34
Ich werde hier aktualisieren, wenn ich eine Lösung finden.
aktualisieren 2
Ich habe meine aktuelle Problemumgehung unten enthalten, falls jemand es nützlich findet.
https://stackoverflow.com/a/37655424/168012
Sie installiert 'reagieren-native-Router-flux' von NPM? Und es ist nicht ES5? – JMM
@JMM Ja. Ich musste das einfach überprüfen, da ich jetzt direkt von einem Zweig ziehe, aber ja, die Installation von NPM ist ES6. Eine aktuelle PR zu ändern wurde aufgegeben, also bin ich auf der Suche nach einer alternativen Lösung https://github.com/aksonov/react-native-router-flux/pull/649 – Tom