Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5
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
Laurent S
erp5
Commits
2d4eaa1f
Commit
2d4eaa1f
authored
Feb 16, 2018
by
Roque
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
scalability: test suite refactor
parent
f2337e33
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
26 additions
and
11 deletions
+26
-11
scalability_test/__init__.py
scalability_test/__init__.py
+26
-11
No files found.
scalability_test/__init__.py
View file @
2d4eaa1f
import
os.path
import
json
import
urlparse
ZOPE_USER_FAMILY
=
"user"
ZOPE_ACTIVITIES_FAMILIY
=
"activities"
PERSON_KEY
=
"person_per_hour"
ORDER_KEY
=
"sale_order_per_hour"
...
...
@@ -16,23 +19,32 @@ class ERP5_scalability():
return
'example/scalabilityUsers'
def
getUserQuantity
(
self
,
test_number
):
return
[
20
,
30
,
40
,
50
,
60
][
test_number
]
return
[
8
,
14
,
20
,
28
,
36
][
test_number
]
# Test duration in seconds
def
getTestDuration
(
self
,
test_number
):
return
8
*
self
.
getUserQuantity
(
test_number
)
return
30
*
self
.
getUserQuantity
(
test_number
)
def
getTestRepetition
(
self
,
test_number
):
return
3
def
getScalabilityTestUrl
(
self
,
instance_information_dict
):
frontend_address
=
instance_information_dict
[
'frontend-url-list'
][
0
]
return
"%s/erp5"
%
frontend_address
for
frontend
in
instance_information_dict
[
'frontend-url-list'
]:
if
frontend
[
0
]
==
ZOPE_USER_FAMILY
:
frontend_address
=
frontend
[
1
]
break
port
=
4443
if
urlparse
.
urlparse
(
frontend_address
).
scheme
==
'https'
else
8080
return
"%s:%d/erp5"
%
(
frontend_address
,
port
)
def
getScalabilityTestMetricUrl
(
self
,
instance_information_dict
,
**
kw
):
frontend_address
=
instance_information_dict
[
'frontend-url-list'
][
0
]
metrics_url
=
frontend_address
.
replace
(
"https://"
,
"https://%s:%s@"
%
(
instance_information_dict
[
'user'
],
for
frontend
in
instance_information_dict
[
'frontend-url-list'
]:
if
frontend
[
0
]
==
ZOPE_USER_FAMILY
:
frontend_address
=
frontend
[
1
]
break
port
=
4443
if
urlparse
.
urlparse
(
frontend_address
).
scheme
==
'https'
else
8080
frontend_address
=
"%s:%d"
%
(
frontend_address
,
port
)
metrics_url
=
frontend_address
.
replace
(
"://"
,
"://%s:%s@"
%
(
instance_information_dict
[
'user'
],
instance_information_dict
[
'password'
]))
return
metrics_url
+
"/erp5/ERP5Site_getScalabilityTestMetric"
...
...
@@ -53,10 +65,13 @@ class ERP5_scalability():
str
(
output_json
[
PERSON_KEY
]),
str
(
output_json
[
ORDER_KEY
]))
def
getBootstrapScalabilityTestUrl
(
self
,
instance_information_dict
,
count
=
0
,
**
kw
):
frontend_address
=
instance_information_dict
[
'frontend-url-list'
][
0
]
bootstrap_url
=
frontend_address
.
replace
(
"https://"
,
"https://%s:%s@"
%
(
instance_information_dict
[
'user'
],
instance_information_dict
[
'password'
]))
for
zope
in
instance_information_dict
[
'zope-address-list'
]:
if
zope
[
0
]
==
ZOPE_USER_FAMILY
:
zope_address
=
zope
[
1
]
break
bootstrap_url
=
"http://%s:%s@%s"
%
(
instance_information_dict
[
'user'
],
instance_information_dict
[
'password'
],
zope_address
)
bootstrap_url
+=
"/erp5/ERP5Site_bootstrapScalabilityTest"
bootstrap_url
+=
"?user_quantity=%i"
%
self
.
getUserQuantity
(
count
)
return
bootstrap_url
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