我有几个不同的项目。我正在尝试创建一个脚本来运行所有这些项目E2E测试背靠背。这些测试使用webdriver.io
实现,每个测试都有一个或两个规范。
这就是我的脚本:
ROOT_PATH="$(cd "$(dirname "$0")" && pwd)"
BASE_PATH="${ROOT_PATH}/../.."
while read MYAPP; do # List of apps that I want to run the E2Es
PROJECT="${MYAPP}"
FOLDER="${BASE_PATH}/${PROJECT}"
cd "$FOLDER"
npm run test:e2e
echo ""
done < "${ROOT_PATH}/../assets/apps-manifest"
问题是,当我这样运行时,我会在我正在循环的MYAPP
列表中为每个应用程序获取以下列表:
模式MYAPP与任何文件都不匹配
当然,如果我运行相同的脚本,但没有循环遍历所有不同的应用程序,它会按预期工作。
为什么会这样?我是否必须手动执行某些操作以允许一个应用程序的E2E测试在其他应用程序启动之前完成?如果是这样,我该怎么做?或者,我是否有一种完全不同的方式可以同时从不同的项目中运行我的所有测试?