Skript start_selenium_tests.sh

Automaticky generovaná dokumentace skriptu scripts/start_selenium_tests.sh.

 1#!/bin/bash
 2#spsteni selenium tersů
 3# -f provede neuspesne testy
 4# -a provede vsechny testy
 5mode="a"
 6usage() {
 7  echo "Použití: $0 [-f] [-a] [-h]"
 8  echo "  -f          provede neuspesne testy v tabulce "
 9  echo "  -a          provede vsechny testy (výchozí)"
10  echo "  -t cislo    provede test zadaneho cisla "
11  echo "  -b          spusti všechny testy na pozadí, výstup se uloží do /opt/selenium_test/test.log a run.log"
12  echo "  -h          Zobrazí tuto napovedu"
13  echo " vysledky ulozi do /opt/selenium_test/results.xlsx,"
14  echo "v /opt/selenium_test/ se ukladaji take screenshoty kazdeho testu "
15  exit 1
16}
17
18
19test_all(){
20docker exec -i $(docker ps -q -f name=swarm_webamcr_web) script -q -c "python3 run_tests.py"
21}
22
23test_all_background(){
24nohup docker exec $(docker ps -q -f name=swarm_webamcr_web)  python3 run_tests.py -s >>/opt/selenium_test/run.log 2>&1 &
25}
26
27test_failed(){
28docker exec -i $(docker ps -q -f name=swarm_webamcr_web) script -q -c "python3 run_tests.py -f"
29}
30
31test_number(){
32docker exec -i $(docker ps -q -f name=swarm_webamcr_web) script -q -c "python3 run_tests.py -t $1"
33}
34
35
36while getopts 'fabt:h' flag; do
37  case "${flag}" in
38    f) mode="f" ;;
39    a) mode="a" ;;
40    b) mode="b" ;;
41    t) 
42      if ! [[ $OPTARG =~ ^[0-9]+$ ]]; then
43        echo "Chyba: parametr -t vyzaduje cislo."
44        usage
45      fi
46      mode="t"
47      t_value=$OPTARG
48      ;;
49    h) usage ;;
50    *) usage ;;
51  esac
52done
53
54if [ $OPTIND -eq 1 ]; then
55  mode="a"
56fi
57
58echo "Vybraný režim: $mode"
59
60if [ "$mode" == "f" ]; then
61  echo "Testuji pouze neuspesne."
62  test_failed
63elif [ "$mode" == "a" ]; then
64  echo "Testuji vse."
65  test_all
66elif [ "$mode" == "t" ]; then
67  echo "Testuji test $t_value."
68  test_number $t_value
69elif [ "$mode" == "b" ]; then
70  echo "Testuji vse na pozadi"
71  test_all_background
72fi