run_QA.sh:
#!/bin/bash
set v
# -------------------------------------------------------
# 0 : Do NOT execute tests for the platform
# Anything else(e.g. 1) Execute tests for the platform
# -------------------------------------------------------
export PROJECT_DIR=$CD
# TEST SUITE CAPBILITIES
# include or exclude test scenarios and/or story files (e.g. "- skip,+checkout")
# -: means exclude
# +: means include
export PARAM="-skip,+Delta"
# MAVEN EXECUTION PROFILE
export SINGLETHREAD=singlethread
export PARALLEL=parallel
export MULTITHREAD=multithread
# set profile for building
export PROFILE=$SINGLETHREAD
# TEST RESULTS LOCATION
export TEST_RESULTS=TestResults
# =================================== DESKTOP ========================================
# ---------- Delta (English) ----------
#:DESKTOP_DT_EN
# chrome, iexplorer, firefox
export BROWSER=firefox
export BRAND=TIMBERLAND
export TEST_ENV=NA
export LAN=EN
export PLATFORM=DESKTOP
export SOURCE=${PROJECT_DIR}/src/test/resources/test_data/$BRAND/$TEST_ENV
export DESTINATION=${PROJECT_DIR}/src/test/resources
echo --- Creating Test Results folder...
#MD $PROJECT_DIR/$TEST_RESULTS/$BRAND_$TEST_ENV_$PLATFORM_$LAN_$TEST_RESULTS$/site/serenity
#echo --- Testing DESKTOP_DT_EN
export BASE_URL=http://qa.timberland.com/
export META_FILTER=$PARAM
echo --- calling run.sh file...
#$PROJECT_DIR
#echo "test"
#source=/Users/oletis/git/automation/TimberlandSuite
call %PROJECT_DIR%\run.sh
run.sh:
#!/bin/bash
#set v
echo --------------------------------------------------------------------------------------
echo Test Environment: $BRAND:$TEST_ENV_$PLATFORM_$LAN
echo $BRAND
echo $TEST_ENV
echo $PLATFORM
echo $LAN
echo $BASE_URL
echo --------------------------------------------------------------------------------------
#::echo Removing previous test results...
#::IF exist $PROJECT_DIR/$TEST_RESULTS/$BRAND_$TEST_ENV_$PLATFORM_$LAN_$TEST_RESULTS DEL /S /Q /F $PROJECT_DIR/$TEST_RESULTS/$BRAND_$TEST_ENV_$PLATFORM_$LAN_$TEST_RESULTS | echo > /dev/null
#::echo Done
#::echo
echo cd to project directory…
cd "${PROJECT_DIR}"
echo Done
echo .
set DEFAULTPROFILE=$SINGLETHREAD
echo thread
if [ $PROFILE=$MULTITHREAD ]
then
export DEFAULTPROFILE=$MULTITHREAD
echo here
elif
[ $PROFILE=$SINGLETHREAD ]
then
export DEFAULTPROFILE=$SINGLETHREAD
echo hereo
elif
[ $PROFILE=$PARALLEL ]
then
export DEFAULTPROFILE=$PARALLEL
echo sdsf
else
echo ****************** Invalid profile configuration...
echo ****************** Using default profile: "$DEFAULTPROFILE"
fi
echo bush
echo --- Running in $DEFAULTPROFILE mode ---
echo --- Deleting table files from $DESTINATION...
if [ -e $destionation/*.table ] DEL /Q /F $DESTINATION/*.table
echo Done
else
echo ****** No files deleted
echo.
fi
echo Preparing test-data files...
# copy test_data to appropriate files
cp -f "$SOURCE/$LAN_General.table" "$DESTINATION/General.table"
echo Done
echo
# )
echo Cleaning...
.mvn clean
echo Done
echo.
echo Compiling...
.mvn compile
echo Done
echo.
echo Executing...
# the metafilter=-skip is configured in Serenity.properties file, so no need to pass it as a parameter
# . mvn verify -Dmetafilter="-skip" | echo >> log.txt
# to run with checkstyle and OMD use -DskipTests. To disable code compliance use -DskipCodeCompliance=true
# . mvn verify -DskipTests -Dwebdriver.driver=$BROWSER -Dwebdriver.base.url="$BASE_URL"
# . mvn verify -Dmetafilter=$META_FILTER -Dwebdriver.driver=$BROWSER -Dwebdriver.base.url="$BASE_URL" -Dbrand="$BRAND"
if [ $PROFILE==$MULTITHREAD ]; then{
#echo Starting in myversion
.mvn integration-test -P $DEFAULTPROFILE -Dlan=$LAN -Dbrand=$BRAND -Dtestenv=$TEST_ENV -Dmetafilter=$META_FILTER -Dwebdriver.driver=$BROWSER -Dwebdriver.base.url="$BASE_URL" -Dplatform=$PLATFORM
.mvn serenity:aggregate -P $DEFAULTPROFILE
}
elif [ $PROFILE==$SINGLETHREAD ];
then {
echo SINGLETHREAD
# .mvn verify -Dmetafilter=$META_FILTER -Dwebdriver.driver=$BROWSER -Dwebdriver.base.url="$BASE_URL" -Dbrand.name="$BRAND"
if [ $PLATFORM=="BROWSERSTACK" ]; then {
.mvn verify -P $DEFAULTPROFILE -DproxySet=true -DproxyHost=proxy4.wipro.com -DproxyPort=8080 -DproxyUser=PA257736 -DproxyPass=Fossil#in -Dlan=$LAN -Dbrand=$BRAND -Dmetafilter=$META_FILTER -Dplatform=$PLATFORM -Dbrowserstack.os=$BROWSERSTACK_OS -Dbrowserstack.os.version=$BROWSERSTACK_OS_VERSION -Dbrowserstack.browser=$BROWSER -Dbrowserstack.browser.version=$BROWSER_VERSION -Dbrowserstack.build=BROWSERSTACK_BUILD -Dbrowserstack.url=$BROWSERSTACK_URL -Dwebdriver.base.url="$BASE_URL"
}
else
.mvn verify -P $DEFAULTPROFILE -Dlan=$LAN -Dbrand=$BRAND -Dtestenv=$TEST_ENV -Dmetafilter=$META_FILTER -Dwebdriver.driver=$BROWSER -Dwebdriver.base.url="$BASE_URL" -Dplatform=$PLATFORM
fi
}
fi
echo Execution Done
echo
echo a
date=$(date +"%d%m%y")
echo $date
timestamp=$(date +"%H%M")
echo $timestamp
echo s
echo --- Copying test result to $TEST_RESULTS folder...
if ![ -e $PROJECT_DIR/$TEST_RESULTS MD $PROJECT_DIR/$TEST_RESULTS ]
#XCP /E "$PROJECT_DIR/target/*.*" "$PROJECT_DIR/"$TEST_RESULTS"/"$BRAND"_"$TEST_ENV"_"$PLATFORM"_"$LAN"_"$TEST_RESULTS"/*.*" | echo > /dev/null
XCP /E "$PROJECT_DIR/target/*.*" "$PROJECT_DIR/$TEST_RESULTS/$BRAND_$TEST_ENV_$PLATFORM_$BROWSER_$LAN_$date_$timestamp/*.*" | echo > /dev/null
fi
echo Done
echo
当我运行它时,命令未找到错误即将到来。
l-185002536:timberlandsuite imguser $ sh run_QA.sh
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
:找不到命令
---创建测试结果文件夹...
:找不到命令
:找不到命令
:找不到命令
---调用run.sh文件......
:找不到命令
run_QA.sh:第63行:调用:未找到命令