我们想使用E2 E测试Testcafe与Axios模块。我们使用标准的Docker图像Testcafe与安装的Axios使用
npm install -g axios
字符串
测试文件位于文件夹/tests
中。
在几次不成功的尝试后,我进入容器并尝试手动开始测试:
running test with command testcafe firefox:headless/tests/AA_API_user_user.js错误:
ERROR Cannot prepare tests due to the following error:
Error: Cannot find module 'axios'
Require stack:
- /tests/AA_API_create_user.js
- /usr/local/lib/node_modules/testcafe/lib/compiler/test-file/formats/es-next/compiler.js
- /usr/local/lib/node_modules/testcafe/lib/compiler/compilers.js
- /usr/local/lib/node_modules/testcafe/lib/compiler/index.js
- /usr/local/lib/node_modules/testcafe/lib/runner/bootstrapper.js
- /usr/local/lib/node_modules/testcafe/lib/runner/index.js
- /usr/local/lib/node_modules/testcafe/lib/testcafe.js
- /usr/local/lib/node_modules/testcafe/lib/index.js
- /usr/local/lib/node_modules/testcafe/lib/cli/cli.js
- /usr/local/lib/node_modules/testcafe/lib/cli/index.js
at Object.<anonymous> (/tests/AA_API_create_user.js:3:1)`
型
如果我尝试模块列表:npm list -g
:
/usr/local/lib
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
+-- [email protected]
-- [email protected]
型
如果我将npm模块安装到与测试相同的目录,则会发现Axios:
cd /tests
npm install axios
型
但这并不能解决我的问题,因为测试文件夹需要挂载到容器外。如何安装Axios以在Docker容器中正确使用Testcafe?
1条答案
按热度按时间c6ubokkw1#
测试中引用的Node js模块应该位于Map的主机目录或其子目录中。否则,无法从容器访问它们。或者,您可以共享一个驱动器以从Docker容器访问它。有关更多信息,请参阅Docker docs。