在npm命令中将标志传递给脚本

问题描述 投票:0回答:1

我正在使用create-react-app来构建我的应用程序,而我正在使用cypress进行自动化。

    "scripts": {
    "build-css": "node-sass-chokidar --include-path ./src --include-path ./node_modules src/ -o src/",
    "watch-css": "npm run build-css && node-sass-chokidar --include-path ./src --include-path ./node_modules src/ -o src/ --watch --recursive",
    "start-js": "react-scripts start",
    "start": "npm-run-all -p watch-css start-js",
    "cy:run": "cypress run ,
    "cypress:all": "start-server-and-test start http-get://localhost:3000 cy:run"
}

为了运行测试,首先我需要使用npm start启动我的应用程序然后我可以运行命令npm run cy:run -- --record --key <record-key>

相反,我正在做的是运行命令npm run cypress:all,它将调用npm start,一旦服务器启动并运行它就会运行测试。但是如何传递此命令的记录标志? npm run cypress:all -- --record <record-key>在这里不起作用。

node.js npm cypress npm-scripts create-react-native-app
1个回答
0
投票

start-server-and-test docs

除了使用NPM脚本名称之外,您还可以传递整个命令(用引号括起来,使它仍然是单个字符串),这些命令将“按原样”执行。例如,要在运行和记录Cypress.io测试之前启动全局安装的http-server,您可以使用start-server-and-test 'http-server -c-1 --silent' 8000 './node_modules/.bin/cypress run --record'

© www.soinside.com 2019 - 2024. All rights reserved.