Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ZhouShuya
OpenXG-RAN
Commits
d7e31be9
Commit
d7e31be9
authored
Dec 06, 2015
by
Rohit Gupta
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
updates to autotest framework
parent
707e6798
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
103 additions
and
47 deletions
+103
-47
cmake_targets/autotests/README.txt
cmake_targets/autotests/README.txt
+3
-3
cmake_targets/autotests/run_exec_lte-softmodem_tests.py
cmake_targets/autotests/run_exec_lte-softmodem_tests.py
+88
-31
cmake_targets/autotests/test_case_list.xml
cmake_targets/autotests/test_case_list.xml
+10
-11
cmake_targets/tools/test_helper
cmake_targets/tools/test_helper
+2
-2
No files found.
cmake_targets/autotests/README.txt
View file @
d7e31be9
...
@@ -111,11 +111,11 @@ Obj.# Case# Test# Description
...
@@ -111,11 +111,11 @@ Obj.# Case# Test# Description
01 57 lte-softmodem tests with USRP B210 RF as eNB and OAI EPC (eNB and EPC are on different machines) w/ Bandrich COTS UE
01 57 lte-softmodem tests with USRP B210 RF as eNB and OAI EPC (eNB and EPC are on different machines) w/ Bandrich COTS UE
01 58 lte-softmodem tests with USRP
B2
10 RF as eNB and ALU EPC w/ Bandrich COTS UE for `TX/1RX, 1TX/2RX, 2TX/1RX 2TX/2RX
01 58 lte-softmodem tests with USRP
X3
10 RF as eNB and ALU EPC w/ Bandrich COTS UE for `TX/1RX, 1TX/2RX, 2TX/1RX 2TX/2RX
01 59 lte-softmodem tests with USRP
B2
10 RF as eNB and OAI EPC (eNB and EPC are on same machines) w/ Bandrich COTS UE
01 59 lte-softmodem tests with USRP
X3
10 RF as eNB and OAI EPC (eNB and EPC are on same machines) w/ Bandrich COTS UE
01 61 lte-softmodem tests with USRP
B2
10 RF as eNB and OAI EPC (eNB and EPC are on different machines) w/ Bandrich COTS UE
01 61 lte-softmodem tests with USRP
X3
10 RF as eNB and OAI EPC (eNB and EPC are on different machines) w/ Bandrich COTS UE
01 61 lte-softmodem tests with EXMIMO RF as eNB and ALU EPC w/ Bandrich COTS UE
01 61 lte-softmodem tests with EXMIMO RF as eNB and ALU EPC w/ Bandrich COTS UE
01 62 lte-softmodem tests with EXMIMO RF as eNB and OAI EPC (eNB and EPC are on same machines) w/ Bandrich COTS UE
01 62 lte-softmodem tests with EXMIMO RF as eNB and OAI EPC (eNB and EPC are on same machines) w/ Bandrich COTS UE
...
...
cmake_targets/autotests/run_exec_lte-softmodem_tests.py
View file @
d7e31be9
...
@@ -233,10 +233,11 @@ def finalize_deploy_script (timeout_cmd, terminate_missing_procs='True'):
...
@@ -233,10 +233,11 @@ def finalize_deploy_script (timeout_cmd, terminate_missing_procs='True'):
sleep $wakeup_interval
sleep $wakeup_interval
done
done
echo "Final time step (Duration of test case) = $step "
echo "Final time step (Duration of test case) = $step "
date
"""
"""
else
:
else
:
#We do not terminate the script if one of the processes has existed prematurely
#We do not terminate the script if one of the processes has existed prematurely
cmd
=
cmd
+
'sleep '
+
str
(
timeout_cmd
)
+
'
\n
'
cmd
=
cmd
+
'sleep '
+
str
(
timeout_cmd
)
+
'
; date
\n
'
return
cmd
return
cmd
...
@@ -329,7 +330,7 @@ class testCaseThread_generic (threading.Thread):
...
@@ -329,7 +330,7 @@ class testCaseThread_generic (threading.Thread):
#addsudo = 'echo \'' + mypassword + '\' | sudo -S -E '
#addsudo = 'echo \'' + mypassword + '\' | sudo -S -E '
addpass
=
'echo
\'
'
+
mypassword
+
'
\'
| '
addpass
=
'echo
\'
'
+
mypassword
+
'
\'
| '
user
=
getpass
.
getuser
()
user
=
getpass
.
getuser
()
print
"Starting test case : "
+
self
.
testcasename
+
" On machine "
+
self
.
machine
print
"Starting test case : "
+
self
.
testcasename
+
" On machine "
+
self
.
machine
+
" timeout = "
+
str
(
self
.
timeout
)
oai
=
openair
(
'localdomain'
,
self
.
machine
)
oai
=
openair
(
'localdomain'
,
self
.
machine
)
oai
.
connect
(
user
,
self
.
password
)
oai
.
connect
(
user
,
self
.
password
)
cleanOldPrograms
(
oai
,
self
.
oldprogramList
,
self
.
CleanupAluLteBox
)
cleanOldPrograms
(
oai
,
self
.
oldprogramList
,
self
.
CleanupAluLteBox
)
...
@@ -349,7 +350,7 @@ class testCaseThread_generic (threading.Thread):
...
@@ -349,7 +350,7 @@ class testCaseThread_generic (threading.Thread):
os
.
system
(
"mkdir -p "
+
logdir_local_testcase
)
os
.
system
(
"mkdir -p "
+
logdir_local_testcase
)
cmd
=
"mkdir -p "
+
logdir_remote_testcase
cmd
=
"mkdir -p "
+
logdir_remote_testcase
res
=
oai
.
send_recv
(
cmd
,
False
,
self
.
timeout
)
res
=
oai
.
send_recv
(
cmd
,
False
,
self
.
timeout
)
print
"res = "
+
res
#
print "res = " + res
cmd
=
"( cd "
+
self
.
logdirOAI5GRepo
+
"
\n
"
cmd
=
"( cd "
+
self
.
logdirOAI5GRepo
+
"
\n
"
cmd
=
cmd
+
"source oaienv
\n
"
cmd
=
cmd
+
"source oaienv
\n
"
...
@@ -359,7 +360,7 @@ class testCaseThread_generic (threading.Thread):
...
@@ -359,7 +360,7 @@ class testCaseThread_generic (threading.Thread):
#print "cmd = " + cmd
#print "cmd = " + cmd
res
=
oai
.
send_recv
(
cmd
,
False
,
self
.
timeout
)
res
=
oai
.
send_recv
(
cmd
,
False
,
self
.
timeout
)
#print "res = " + res
#print "res = " + res
print
"ThreadID = "
+
str
(
self
.
threadID
)
+
"ThreadName: "
+
self
.
name
+
" testcasename: "
+
self
.
testcasename
+
"Execution Result = "
+
res
#
print "ThreadID = " + str(self.threadID) + "ThreadName: " + self.name + " testcasename: " + self.testcasename + "Execution Result = " + res
write_file
(
logfile_task_testcasename
,
cmd
,
mode
=
"w"
)
write_file
(
logfile_task_testcasename
,
cmd
,
mode
=
"w"
)
#Now we copy all the remote files
#Now we copy all the remote files
ssh
=
SSHSession
(
self
.
machine
,
username
=
user
,
key_file
=
None
,
password
=
self
.
password
)
ssh
=
SSHSession
(
self
.
machine
,
username
=
user
,
key_file
=
None
,
password
=
self
.
password
)
...
@@ -385,8 +386,11 @@ def handle_testcaseclass_generic (testcasename, threadListGeneric, oldprogramLis
...
@@ -385,8 +386,11 @@ def handle_testcaseclass_generic (testcasename, threadListGeneric, oldprogramLis
try
:
try
:
mypassword
=
password
mypassword
=
password
MachineListFree
=
[]
MachineListFree
=
[]
threadListNew
=
[]
while
MachineListFree
.
__len__
()
==
0
:
while
MachineListFree
.
__len__
()
==
0
:
MachineListBusy
=
[]
MachineListBusy
=
[]
MachineListFree
=
[]
threadListNew
=
[]
#first we need to find the list of free machines that we could run our test case
#first we need to find the list of free machines that we could run our test case
if
threadListGeneric
.
__len__
()
==
0
:
if
threadListGeneric
.
__len__
()
==
0
:
#This means no thread is started yet
#This means no thread is started yet
...
@@ -398,25 +402,29 @@ def handle_testcaseclass_generic (testcasename, threadListGeneric, oldprogramLis
...
@@ -398,25 +402,29 @@ def handle_testcaseclass_generic (testcasename, threadListGeneric, oldprogramLis
testcasenameold
=
param
[
"testcasename"
]
testcasenameold
=
param
[
"testcasename"
]
thread_id
.
join
(
1
)
thread_id
.
join
(
1
)
if
thread_id
.
isAlive
()
==
True
:
if
thread_id
.
isAlive
()
==
True
:
print
"thread_id is alive: testcasename: "
+
testcasenameold
threadListNew
.
append
(
param
)
print
"thread_id is alive: testcasename: "
+
testcasenameold
+
" on machine "
+
machine
if
machine
not
in
MachineListBusy
:
if
machine
not
in
MachineListBusy
:
MachineListBusy
.
append
(
machine
)
MachineListBusy
.
append
(
machine
)
else
:
else
:
threadListGeneric
.
remove
(
param
)
print
"thread_id is finished: testcasename: "
+
testcasenameold
+
" on machine "
+
machine
#threadListGeneric.remove(param)
#if machine not in MachineListFree:
# MachineListFree.append(machine)
#Now we check if there is at least one free machine
#Now we check if there is at least one free machine
MachineListFree
=
MachineList
[:]
MachineListFree
=
MachineList
[:]
for
machine
in
MachineListBusy
:
for
machine
in
MachineListBusy
:
if
machine
in
MachineListFree
:
if
machine
in
MachineListFree
:
MachineListFree
.
remove
(
machine
)
MachineListFree
.
remove
(
machine
)
#
print "MachineListFree = " + ','.join(MachineListFree)
print
"MachineListFree = "
+
','
.
join
(
MachineListFree
)
#
print "MachineListBusy = " + ','.join(MachineListBusy)
print
"MachineListBusy = "
+
','
.
join
(
MachineListBusy
)
#
print "MachineList = " + ','.join(MachineList)
print
"MachineList = "
+
','
.
join
(
MachineList
)
machine
=
MachineListFree
[
0
]
machine
=
MachineListFree
[
0
]
thread
=
testCaseThread_generic
(
1
,
"Generic Thread_"
+
testcasename
+
"_"
+
machine
+
_
,
machine
,
logdirOAI5GRepo
,
testcasename
,
oldprogramList
,
CleanupAluLteBox
,
password
,
timeout
)
thread
=
testCaseThread_generic
(
1
,
"Generic Thread_"
+
testcasename
+
"_"
+
"machine_"
,
machine
,
logdirOAI5GRepo
,
testcasename
,
oldprogramList
,
CleanupAluLteBox
,
password
,
timeout
)
param
=
{
"thread_id"
:
thread
,
"Machine"
:
machine
,
"testcasename"
:
testcasename
}
param
=
{
"thread_id"
:
thread
,
"Machine"
:
machine
,
"testcasename"
:
testcasename
}
thread
.
start
()
thread
.
start
()
threadList
Generic
.
append
(
param
)
threadList
New
.
append
(
param
)
return
threadList
Generic
return
threadList
New
except
Exception
,
e
:
except
Exception
,
e
:
error
=
''
error
=
''
error
=
error
+
' In function: '
+
sys
.
_getframe
().
f_code
.
co_name
+
': *** Caught exception: '
+
str
(
e
.
__class__
)
+
" : "
+
str
(
e
)
error
=
error
+
' In function: '
+
sys
.
_getframe
().
f_code
.
co_name
+
': *** Caught exception: '
+
str
(
e
.
__class__
)
+
" : "
+
str
(
e
)
...
@@ -561,14 +569,24 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -561,14 +569,24 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
logfile_exec_eNB
=
logdir_eNB
+
'/eNB_exec'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_exec_eNB
=
logdir_eNB
+
'/eNB_exec'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_pre_exec_eNB
=
logdir_eNB
+
'/eNB_pre_exec'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_pre_exec_eNB
=
logdir_eNB
+
'/eNB_pre_exec'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_traffic_eNB
=
logdir_eNB
+
'/eNB_traffic'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_traffic_eNB
=
logdir_eNB
+
'/eNB_traffic'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_eNB_compile_out
=
logdir_eNB
+
'/eNB_task_compile_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_eNB_compile
=
logdir_local_testcase
+
'/eNB_task_compile'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_eNB_out
=
logdir_eNB
+
'/eNB_task_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_eNB_out
=
logdir_eNB
+
'/eNB_task_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_eNB
=
logdir_local_testcase
+
'/eNB_task'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_eNB
=
logdir_local_testcase
+
'/eNB_task'
+
'_'
+
str
(
run
)
+
'_.log'
task_eNB
=
' (
\n
'
task_eNB
=
task_eNB
+
'cd '
+
logdirOAI5GRepo
+
' ; source oaienv ; source cmake_targets/tools/build_helper
\n
'
task_eNB_compile
=
' ( uname -a ; date
\n
'
task_eNB
=
task_eNB
+
'env |grep OPENAIR
\n
'
task_eNB_compile
=
task_eNB_compile
+
'cd '
+
logdirOAI5GRepo
+
' ; source oaienv ; source cmake_targets/tools/build_helper
\n
'
task_eNB
=
task_eNB
+
update_config_file
(
oai_eNB
,
eNB_config_file
,
logdirOAI5GRepo
,
'$OPENAIR_DIR/cmake_targets/autotests/tools/search_repl.py'
)
+
'
\n
'
task_eNB_compile
=
task_eNB_compile
+
'env |grep OPENAIR
\n
'
task_eNB_compile
=
task_eNB_compile
+
update_config_file
(
oai_eNB
,
eNB_config_file
,
logdirOAI5GRepo
,
'$OPENAIR_DIR/cmake_targets/autotests/tools/search_repl.py'
)
+
'
\n
'
if
eNB_compile_prog
!=
""
:
if
eNB_compile_prog
!=
""
:
task_eNB
=
task_eNB
+
' ( '
+
eNB_compile_prog
+
' '
+
eNB_compile_prog_args
+
' ) > '
+
logfile_compile_eNB
+
' 2>&1
\n
'
task_eNB_compile
=
task_eNB_compile
+
' ( '
+
eNB_compile_prog
+
' '
+
eNB_compile_prog_args
+
' ) > '
+
logfile_compile_eNB
+
' 2>&1
\n
'
task_eNB_compile
=
task_eNB_compile
+
' date ) > '
+
logfile_task_eNB_compile_out
+
' 2>&1 '
write_file
(
logfile_task_eNB_compile
,
task_eNB_compile
,
mode
=
"w"
)
task_eNB
=
' ( uname -a ; date
\n
'
task_eNB
=
task_eNB
+
'cd '
+
logdirOAI5GRepo
+
' ; source oaienv ; source cmake_targets/tools/build_helper
\n
'
task_eNB
=
task_eNB
+
'env |grep OPENAIR
\n
'
+
'array_exec_pid=()
\n
'
if
eNB_pre_exec
!=
""
:
if
eNB_pre_exec
!=
""
:
task_eNB
=
task_eNB
+
' ( '
+
eNB_pre_exec
+
' '
+
eNB_pre_exec_args
+
' ) > '
+
logfile_pre_exec_eNB
+
' 2>&1
\n
'
task_eNB
=
task_eNB
+
' ( '
+
eNB_pre_exec
+
' '
+
eNB_pre_exec_args
+
' ) > '
+
logfile_pre_exec_eNB
+
' 2>&1
\n
'
if
eNB_main_exec
!=
""
:
if
eNB_main_exec
!=
""
:
...
@@ -593,15 +611,27 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -593,15 +611,27 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
logfile_traffic_UE
=
logdir_UE
+
'/UE_traffic'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_traffic_UE
=
logdir_UE
+
'/UE_traffic'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_UE_out
=
logdir_UE
+
'/UE_task_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_UE_out
=
logdir_UE
+
'/UE_task_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_UE
=
logdir_local_testcase
+
'/UE_task'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_UE
=
logdir_local_testcase
+
'/UE_task'
+
'_'
+
str
(
run
)
+
'_.log'
task_UE
=
' (
\n
'
logfile_task_UE_compile_out
=
logdir_UE
+
'/UE_task_compile_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_UE_compile
=
logdir_local_testcase
+
'/UE_task_compile'
+
'_'
+
str
(
run
)
+
'_.log'
task_UE_compile
=
' ( uname -a ; date
\n
'
task_UE_compile
=
task_UE_compile
+
'array_exec_pid=()'
+
'
\n
'
task_UE_compile
=
task_UE_compile
+
'cd '
+
logdirOAI5GRepo
+
'
\n
'
task_UE_compile
=
task_UE_compile
+
'source oaienv
\n
'
task_UE_compile
=
task_UE_compile
+
'source cmake_targets/tools/build_helper
\n
'
task_UE_compile
=
task_UE_compile
+
'env |grep OPENAIR
\n
'
task_UE_compile
=
task_UE_compile
+
update_config_file
(
oai_UE
,
UE_config_file
,
logdirOAI5GRepo
,
'$OPENAIR_DIR/cmake_targets/autotests/tools/search_repl.py'
)
+
'
\n
'
if
UE_compile_prog
!=
""
:
task_UE_compile
=
task_UE_compile
+
' ( '
+
UE_compile_prog
+
' '
+
UE_compile_prog_args
+
' ) > '
+
logfile_compile_UE
+
' 2>&1
\n
'
task_UE_compile
=
task_UE_compile
+
' ) > '
+
logfile_task_UE_compile_out
+
' 2>&1 '
write_file
(
logfile_task_UE_compile
,
task_UE_compile
,
mode
=
"w"
)
task_UE
=
' ( uname -a ; date
\n
'
task_UE
=
task_UE
+
'array_exec_pid=()'
+
'
\n
'
task_UE
=
task_UE
+
'array_exec_pid=()'
+
'
\n
'
task_UE
=
task_UE
+
'cd '
+
logdirOAI5GRepo
+
'
\n
'
task_UE
=
task_UE
+
'cd '
+
logdirOAI5GRepo
+
'
\n
'
task_UE
=
task_UE
+
'source oaienv
\n
'
task_UE
=
task_UE
+
'source oaienv
\n
'
task_UE
=
task_UE
+
'source cmake_targets/tools/build_helper
\n
'
task_UE
=
task_UE
+
'source cmake_targets/tools/build_helper
\n
'
task_UE
=
task_UE
+
'env |grep OPENAIR
\n
'
task_UE
=
task_UE
+
'env |grep OPENAIR
\n
'
task_UE
=
task_UE
+
update_config_file
(
oai_UE
,
UE_config_file
,
logdirOAI5GRepo
,
'$OPENAIR_DIR/cmake_targets/autotests/tools/search_repl.py'
)
+
'
\n
'
if
UE_compile_prog
!=
""
:
task_UE
=
task_UE
+
' ( '
+
UE_compile_prog
+
' '
+
UE_compile_prog_args
+
' ) > '
+
logfile_compile_UE
+
' 2>&1
\n
'
if
UE_pre_exec
!=
""
:
if
UE_pre_exec
!=
""
:
task_UE
=
task_UE
+
' ( '
+
UE_pre_exec
+
' '
+
UE_pre_exec_args
+
' ) > '
+
logfile_pre_exec_UE
+
' 2>&1
\n
'
task_UE
=
task_UE
+
' ( '
+
UE_pre_exec
+
' '
+
UE_pre_exec_args
+
' ) > '
+
logfile_pre_exec_UE
+
' 2>&1
\n
'
if
UE_main_exec
!=
""
:
if
UE_main_exec
!=
""
:
...
@@ -628,15 +658,25 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -628,15 +658,25 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
logfile_traffic_EPC
=
logdir_EPC
+
'/EPC_traffic'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_traffic_EPC
=
logdir_EPC
+
'/EPC_traffic'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_EPC_out
=
logdir_EPC
+
'/EPC_task_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_EPC_out
=
logdir_EPC
+
'/EPC_task_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_EPC
=
logdir_local_testcase
+
'/EPC_task'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_EPC
=
logdir_local_testcase
+
'/EPC_task'
+
'_'
+
str
(
run
)
+
'_.log'
task_EPC
=
' (
\n
'
logfile_task_EPC_compile_out
=
logdir_EPC
+
'/EPC_task_compile_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_EPC_compile
=
logdir_local_testcase
+
'/EPC_task_compile'
+
'_'
+
str
(
run
)
+
'_.log'
task_EPC_compile
=
' ( uname -a ; date
\n
'
task_EPC_compile
=
task_EPC_compile
+
'array_exec_pid=()'
+
'
\n
'
task_EPC_compile
=
task_EPC_compile
+
'cd '
+
logdirOpenaircnRepo
+
'
\n
'
task_EPC_compile
=
task_EPC_compile
+
update_config_file
(
oai_EPC
,
EPC_config_file
,
logdirOpenaircnRepo
,
logdirOpenaircnRepo
+
'/TEST/autotests/tools/search_repl.py'
)
+
'
\n
'
task_EPC_compile
=
task_EPC_compile
+
'source BUILD/TOOLS/build_helper
\n
'
if
EPC_compile_prog
!=
""
:
task_EPC_compile
=
task_EPC_compile
+
'('
+
EPC_compile_prog
+
' '
+
EPC_compile_prog_args
+
' ) > '
+
logfile_compile_EPC
+
' 2>&1
\n
'
if
HSS_compile_prog
!=
""
:
task_EPC_compile
=
task_EPC_compile
+
'('
+
HSS_compile_prog
+
' '
+
HSS_compile_prog_args
+
' ) > '
+
logfile_compile_HSS
+
' 2>&1
\n
'
task_EPC_compile
=
task_EPC_compile
+
' ) > '
+
logfile_task_EPC_compile_out
+
' 2>&1 '
write_file
(
logfile_task_EPC_compile
,
task_EPC_compile
,
mode
=
"w"
)
task_EPC
=
' ( uname -a ; date
\n
'
task_EPC
=
task_EPC
+
'array_exec_pid=()'
+
'
\n
'
task_EPC
=
task_EPC
+
'array_exec_pid=()'
+
'
\n
'
task_EPC
=
task_EPC
+
'cd '
+
logdirOpenaircnRepo
+
'
\n
'
task_EPC
=
task_EPC
+
'cd '
+
logdirOpenaircnRepo
+
'
\n
'
task_EPC
=
task_EPC
+
update_config_file
(
oai_EPC
,
EPC_config_file
,
logdirOpenaircnRepo
,
logdirOpenaircnRepo
+
'/TEST/autotests/tools/search_repl.py'
)
+
'
\n
'
task_EPC
=
task_EPC
+
'source BUILD/TOOLS/build_helper
\n
'
task_EPC
=
task_EPC
+
'source BUILD/TOOLS/build_helper
\n
'
if
EPC_compile_prog
!=
""
:
task_EPC
=
task_EPC
+
'('
+
EPC_compile_prog
+
' '
+
EPC_compile_prog_args
+
' ) > '
+
logfile_compile_EPC
+
' 2>&1
\n
'
if
HSS_compile_prog
!=
""
:
task_EPC
=
task_EPC
+
'('
+
HSS_compile_prog
+
' '
+
HSS_compile_prog_args
+
' ) > '
+
logfile_compile_HSS
+
' 2>&1
\n
'
if
EPC_pre_exec
!=
""
:
if
EPC_pre_exec
!=
""
:
task_EPC
=
task_EPC
+
' ( '
+
EPC_pre_exec
+
' '
+
EPC_pre_exec_args
+
' ) > '
+
logfile_pre_exec_EPC
+
' 2>&1
\n
'
task_EPC
=
task_EPC
+
' ( '
+
EPC_pre_exec
+
' '
+
EPC_pre_exec_args
+
' ) > '
+
logfile_pre_exec_EPC
+
' 2>&1
\n
'
if
HSS_main_exec
!=
""
:
if
HSS_main_exec
!=
""
:
...
@@ -658,6 +698,23 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -658,6 +698,23 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
task_EPC
=
task_EPC
+
' ) > '
+
logfile_task_EPC_out
+
' 2>&1 '
task_EPC
=
task_EPC
+
' ) > '
+
logfile_task_EPC_out
+
' 2>&1 '
write_file
(
logfile_task_EPC
,
task_EPC
,
mode
=
"w"
)
write_file
(
logfile_task_EPC
,
task_EPC
,
mode
=
"w"
)
#first we compile all the programs
thread_EPC
=
oaiThread
(
1
,
"EPC_thread"
,
EPCMachine
,
user
,
password
,
task_EPC_compile
,
False
,
timeout_thread
)
thread_eNB
=
oaiThread
(
2
,
"eNB_thread"
,
eNBMachine
,
user
,
password
,
task_eNB_compile
,
False
,
timeout_thread
)
thread_UE
=
oaiThread
(
3
,
"UE_thread"
,
UEMachine
,
user
,
password
,
task_UE_compile
,
False
,
timeout_thread
)
threads
=
[]
threads
.
append
(
thread_eNB
)
threads
.
append
(
thread_UE
)
threads
.
append
(
thread_EPC
)
# Start new Threads
thread_eNB
.
start
()
thread_UE
.
start
()
thread_EPC
.
start
()
#Wait for all the compile threads to complete
for
t
in
threads
:
t
.
join
()
#Now we execute all the threads
thread_EPC
=
oaiThread
(
1
,
"EPC_thread"
,
EPCMachine
,
user
,
password
,
task_EPC
,
False
,
timeout_thread
)
thread_EPC
=
oaiThread
(
1
,
"EPC_thread"
,
EPCMachine
,
user
,
password
,
task_EPC
,
False
,
timeout_thread
)
thread_eNB
=
oaiThread
(
2
,
"eNB_thread"
,
eNBMachine
,
user
,
password
,
task_eNB
,
False
,
timeout_thread
)
thread_eNB
=
oaiThread
(
2
,
"eNB_thread"
,
eNBMachine
,
user
,
password
,
task_eNB
,
False
,
timeout_thread
)
thread_UE
=
oaiThread
(
3
,
"UE_thread"
,
UEMachine
,
user
,
password
,
task_UE
,
False
,
timeout_thread
)
thread_UE
=
oaiThread
(
3
,
"UE_thread"
,
UEMachine
,
user
,
password
,
task_UE
,
False
,
timeout_thread
)
...
@@ -683,20 +740,20 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -683,20 +740,20 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
print
"Copying files from EPCMachine : "
+
EPCMachine
+
"logdir_EPC = "
+
logdir_EPC
print
"Copying files from EPCMachine : "
+
EPCMachine
+
"logdir_EPC = "
+
logdir_EPC
ssh
=
SSHSession
(
EPCMachine
,
username
=
user
,
key_file
=
None
,
password
=
password
)
ssh
=
SSHSession
(
EPCMachine
,
username
=
user
,
key_file
=
None
,
password
=
password
)
ssh
.
get_all
(
logdir_EPC
,
logdir_local
_testcas
e
)
ssh
.
get_all
(
logdir_EPC
,
logdir_local
+
'/cmake_targets/autotests/log/'
+
testcasenam
e
)
print
"Copying files from eNBMachine "
+
eNBMachine
+
"logdir_eNB = "
+
logdir_eNB
print
"Copying files from eNBMachine "
+
eNBMachine
+
"logdir_eNB = "
+
logdir_eNB
ssh
=
SSHSession
(
eNBMachine
,
username
=
user
,
key_file
=
None
,
password
=
password
)
ssh
=
SSHSession
(
eNBMachine
,
username
=
user
,
key_file
=
None
,
password
=
password
)
ssh
.
get_all
(
logdir_eNB
,
logdir_local
_testcas
e
)
ssh
.
get_all
(
logdir_eNB
,
logdir_local
+
'/cmake_targets/autotests/log/'
+
testcasenam
e
)
print
"Copying files from UEMachine : "
+
UEMachine
+
"logdir_UE = "
+
logdir_UE
print
"Copying files from UEMachine : "
+
UEMachine
+
"logdir_UE = "
+
logdir_UE
ssh
=
SSHSession
(
UEMachine
,
username
=
user
,
key_file
=
None
,
password
=
password
)
ssh
=
SSHSession
(
UEMachine
,
username
=
user
,
key_file
=
None
,
password
=
password
)
ssh
.
get_all
(
logdir_UE
,
logdir_local
_testcas
e
)
ssh
.
get_all
(
logdir_UE
,
logdir_local
+
'/cmake_targets/autotests/log/'
+
testcasenam
e
)
#Currently we only perform throughput tests
#Currently we only perform throughput tests
result
=
tput_test_search_expr
(
eNB_search_expr_true
,
logfile_traffic_eNB
)
result
=
tput_test_search_expr
(
eNB_search_expr_true
,
logfile_traffic_eNB
)
run_result
=
run_result
&
result
run_result
=
run_result
&
result
result
=
tput_test_search_expr
(
ePC_search_expr_true
,
logfile_traffic_e
PC
)
result
=
tput_test_search_expr
(
EPC_search_expr_true
,
logfile_traffic_E
PC
)
run_result
=
run_result
&
result
run_result
=
run_result
&
result
result
=
tput_test_search_expr
(
UE_search_expr_true
,
logfile_traffic_UE
)
result
=
tput_test_search_expr
(
UE_search_expr_true
,
logfile_traffic_UE
)
run_result
=
run_result
&
result
run_result
=
run_result
&
result
...
...
cmake_targets/autotests/test_case_list.xml
View file @
d7e31be9
...
@@ -211,7 +211,7 @@
...
@@ -211,7 +211,7 @@
<pre_compile_prog></pre_compile_prog>
<pre_compile_prog></pre_compile_prog>
<compile_prog>
$OPENAIR_DIR/cmake_targets/build_oai
</compile_prog>
<compile_prog>
$OPENAIR_DIR/cmake_targets/build_oai
</compile_prog>
<compile_prog_args>
--eNB -w ETHERNET -r Rel10
</compile_prog_args>
<compile_prog_args>
--eNB -w ETHERNET -r Rel10
</compile_prog_args>
<compile_prog_out>
$OPENAIR_DIR/cmake_targets/lte_
noS1_
build_oai/build/lte-softmodem
</compile_prog_out>
<compile_prog_out>
$OPENAIR_DIR/cmake_targets/lte_build_oai/build/lte-softmodem
</compile_prog_out>
<pre_exec></pre_exec>
<pre_exec></pre_exec>
<pre_exec_args></pre_exec_args>
<pre_exec_args></pre_exec_args>
<main_exec></main_exec>
<main_exec></main_exec>
...
@@ -280,7 +280,6 @@
...
@@ -280,7 +280,6 @@
<compile_prog>
$OPENAIR_DIR/cmake_targets/build_oai
</compile_prog>
<compile_prog>
$OPENAIR_DIR/cmake_targets/build_oai
</compile_prog>
<compile_prog_args>
--RRH -w EXMIMO
</compile_prog_args>
<compile_prog_args>
--RRH -w EXMIMO
</compile_prog_args>
<compile_prog_out>
$OPENAIR_DIR/cmake_targets/rrh_gw/build/rrh_gw
<compile_prog_out>
$OPENAIR_DIR/cmake_targets/rrh_gw/build/rrh_gw
$OPENAIR_DIR/cmake_targets/rrh_gw/build/rrh_gw
$OPENAIR_DIR/cmake_targets/rrh_gw/build/CMakeFiles/openair_rf/openair_rf.ko
$OPENAIR_DIR/cmake_targets/rrh_gw/build/CMakeFiles/openair_rf/openair_rf.ko
$OPENAIR_DIR/cmake_targets/rrh_gw/build/updatefw
$OPENAIR_DIR/cmake_targets/rrh_gw/build/updatefw
$OPENAIR_DIR/cmake_targets/rrh_gw/build/oarf_config_exmimo.oct
</compile_prog_out>
$OPENAIR_DIR/cmake_targets/rrh_gw/build/oarf_config_exmimo.oct
</compile_prog_out>
...
@@ -307,7 +306,7 @@
...
@@ -307,7 +306,7 @@
<main_exec_args></main_exec_args>
<main_exec_args></main_exec_args>
<search_expr_true></search_expr_true>
<search_expr_true></search_expr_true>
<search_expr_false></search_expr_false>
<search_expr_false></search_expr_false>
<tags>
RRH.
USRP
.Rel10
</tags>
<tags>
RRH.
BLADERF
.Rel10
</tags>
<nruns>
1
</nruns>
<nruns>
1
</nruns>
</testCase>
</testCase>
...
@@ -929,7 +928,7 @@
...
@@ -929,7 +928,7 @@
<eNB>
calisson
</eNB>
<eNB>
calisson
</eNB>
<UE>
stevens
</UE>
<UE>
stevens
</UE>
<EPC>
amerique
</EPC>
<EPC>
amerique
</EPC>
<TimeOut_cmd>
6
0
</TimeOut_cmd>
<TimeOut_cmd>
18
0
</TimeOut_cmd>
<eNB_working_dir>
/tmp
</eNB_working_dir>
<eNB_working_dir>
/tmp
</eNB_working_dir>
<eNB_config_file>
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.local.conf tracking_area_code \"1\"
<eNB_config_file>
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.local.conf tracking_area_code \"1\"
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.local.conf mobile_country_code \"208\"
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.local.conf mobile_country_code \"208\"
...
@@ -937,15 +936,15 @@
...
@@ -937,15 +936,15 @@
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.remote.conf tracking_area_code \"1\"
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.remote.conf tracking_area_code \"1\"
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.remote.conf mobile_country_code \"208\"
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.remote.conf mobile_country_code \"208\"
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.remote.conf mobile_network_code \"92\"
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.remote.conf mobile_network_code \"92\"
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.remote.conf N_RB_DL
50
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.remote.conf N_RB_DL
25
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.remote.conf mme_ip_address "ipv4=\"192.168.12.26\";ipv6=\"192:168:30::17\";active=\"yes\";preference=\"ipv4\";"
</eNB_config_file>
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.remote.conf mme_ip_address "ipv4=\"192.168.12.26\";ipv6=\"192:168:30::17\";active=\"yes\";preference=\"ipv4\";"
</eNB_config_file>
<eNB_compile_prog>
$OPENAIR_DIR/cmake_targets/build_oai
</eNB_compile_prog>
<eNB_compile_prog>
$OPENAIR_DIR/cmake_targets/build_oai
</eNB_compile_prog>
<eNB_compile_prog_args>
--eNB -w USRP
</eNB_compile_prog_args>
<eNB_compile_prog_args>
--eNB -w USRP
-x -c
</eNB_compile_prog_args>
<eNB_pre_exec></eNB_pre_exec>
<eNB_pre_exec></eNB_pre_exec>
<eNB_pre_exec_args></eNB_pre_exec_args>
<eNB_pre_exec_args></eNB_pre_exec_args>
<eNB_main_exec>
$OPENAIR_DIR/cmake_targets/lte_build_oai/build/lte-softmodem
</eNB_main_exec>
<eNB_main_exec>
$OPENAIR_DIR/cmake_targets/lte_build_oai/build/lte-softmodem
</eNB_main_exec>
<eNB_main_exec_args>
-O $OPENAIR_DIR/targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.remote.conf
</eNB_main_exec_args>
<eNB_main_exec_args>
-O $OPENAIR_DIR/targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.remote.conf
</eNB_main_exec_args>
<eNB_traffic_exec>
iperf -s
</eNB_traffic_exec>
<eNB_traffic_exec></eNB_traffic_exec>
<eNB_traffic_exec_args></eNB_traffic_exec_args>
<eNB_traffic_exec_args></eNB_traffic_exec_args>
<eNB_search_expr_true></eNB_search_expr_true>
<eNB_search_expr_true></eNB_search_expr_true>
<eNB_search_expr_false></eNB_search_expr_false>
<eNB_search_expr_false></eNB_search_expr_false>
...
@@ -956,12 +955,12 @@
...
@@ -956,12 +955,12 @@
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.local.conf mobile_country_code \"5\"
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.local.conf mobile_country_code \"5\"
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.local.conf mobile_network_code \"6\"
</UE_config_file>
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.epc.local.conf mobile_network_code \"6\"
</UE_config_file>
<UE_compile_prog>
$OPENAIR_DIR/cmake_targets/build_oai
</UE_compile_prog>
<UE_compile_prog>
$OPENAIR_DIR/cmake_targets/build_oai
</UE_compile_prog>
<UE_compile_prog_args>
--eNB -w USRP
</UE_compile_prog_args>
<UE_compile_prog_args>
--eNB -w USRP
-x -c
</UE_compile_prog_args>
<UE_pre_exec></UE_pre_exec>
<UE_pre_exec></UE_pre_exec>
<UE_pre_exec_args></UE_pre_exec_args>
<UE_pre_exec_args></UE_pre_exec_args>
<UE_main_exec>
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
</UE_main_exec>
<UE_main_exec>
sleep 30 ;
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
</UE_main_exec>
<UE_main_exec_args></UE_main_exec_args>
<UE_main_exec_args></UE_main_exec_args>
<UE_traffic_exec>
iperf -u -c 192.172.0.1 -b 10Mbits/s -t 3000
</UE_traffic_exec>
<UE_traffic_exec>
while true; do var=`ifconfig ppp0` ;sleep 1; if [ "$var" != "" ]; then break; fi ; done ; sleep 5; iperf -u -c 192.172.0.1 -b 10Mbits/s -t 3000 -B 192.172.0.2
</UE_traffic_exec>
<UE_traffic_exec_args></UE_traffic_exec_args>
<UE_traffic_exec_args></UE_traffic_exec_args>
<UE_search_expr_true></UE_search_expr_true>
<UE_search_expr_true></UE_search_expr_true>
<UE_search_expr_false></UE_search_expr_false>
<UE_search_expr_false></UE_search_expr_false>
...
@@ -984,7 +983,7 @@
...
@@ -984,7 +983,7 @@
<EPC_main_exec_args></EPC_main_exec_args>
<EPC_main_exec_args></EPC_main_exec_args>
<HSS_main_exec>
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
</HSS_main_exec>
<HSS_main_exec>
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
</HSS_main_exec>
<HSS_main_exec_args></HSS_main_exec_args>
<HSS_main_exec_args></HSS_main_exec_args>
<EPC_traffic_exec>
iperf -s -i 1 -u -f m
</EPC_traffic_exec>
<EPC_traffic_exec>
sleep 5; iperf -s -i 1 -u -f m -B 192.172.0.1
</EPC_traffic_exec>
<EPC_traffic_exec_args></EPC_traffic_exec_args>
<EPC_traffic_exec_args></EPC_traffic_exec_args>
<EPC_search_expr_true>
throughput_test min=0.0Mbits/sec max=0.0Mbits/sec average=0.0Mbits/sec duration=0.0s
</EPC_search_expr_true>
<EPC_search_expr_true>
throughput_test min=0.0Mbits/sec max=0.0Mbits/sec average=0.0Mbits/sec duration=0.0s
</EPC_search_expr_true>
<EPC_search_expr_false></EPC_search_expr_false>
<EPC_search_expr_false></EPC_search_expr_false>
...
...
cmake_targets/tools/test_helper
View file @
d7e31be9
...
@@ -35,7 +35,7 @@ xUnit_fail() {
...
@@ -35,7 +35,7 @@ xUnit_fail() {
currtime=$(date +%s.%N)
currtime=$(date +%s.%N)
time=$(echo "$currtime - $XUNIT_START" | bc -l)
time=$(echo "$currtime - $XUNIT_START" | bc -l)
xml="<testcase classname='$class' name='$test_case' Run_result='$run_result' time='$time s' RESULT='$result'></testcase>"
xml="<testcase classname='$class' name='$test_case' Run_result='$run_result' time='$time s' RESULT='$result'></testcase>"
echo -e $xml > $xmlfile_testcase
echo -e $xml >
>
$xmlfile_testcase
XUNIT_TESTCASES_XML="$XUNIT_TESTCASES_XML \n$xml"
XUNIT_TESTCASES_XML="$XUNIT_TESTCASES_XML \n$xml"
XUNIT_FAILED=$((XUNIT_FAILED+1))
XUNIT_FAILED=$((XUNIT_FAILED+1))
}
}
...
@@ -57,7 +57,7 @@ xUnit_success() {
...
@@ -57,7 +57,7 @@ xUnit_success() {
currtime=$(date +%s.%N)
currtime=$(date +%s.%N)
time=$(echo "$currtime - $XUNIT_START" | bc -l)
time=$(echo "$currtime - $XUNIT_START" | bc -l)
xml="<testcase classname='$class' name='$test_case' Run_result='$run_result' time='$time s' RESULT='$result'></testcase>"
xml="<testcase classname='$class' name='$test_case' Run_result='$run_result' time='$time s' RESULT='$result'></testcase>"
echo -e $xml > $xmlfile_testcase
echo -e $xml >
>
$xmlfile_testcase
XUNIT_TESTCASES_XML="$XUNIT_TESTCASES_XML \n$xml"
XUNIT_TESTCASES_XML="$XUNIT_TESTCASES_XML \n$xml"
XUNIT_SUCCESS=$((XUNIT_SUCCESS+1))
XUNIT_SUCCESS=$((XUNIT_SUCCESS+1))
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment