noteable changes:
- added function wait_for_attribute, which will pause the script until a
elements attribute changes to a desired value
- move_action is no longer available, was replaced with ActionChains
- fill_element now scrolls to element when it needs to. removed unnecessary
scroll_to_element lines with it
- there are now checks if a edit window is opened, to prevent
element_not_interactable exception
- some checks needed sleep(1), else the test would be redirected to a totaly
wrong page
- added some checks to see if test is on the right page, to prevent failing
alert checks
Change-Id: Ic516fbd1c5bc94bd8b7cb21b1d6bd089d8880fdf
Dockerfile:
- update firefox to 68.0.1 (from 54.0)
- update geckodriver to 0.24 (from 0.18)
- update Selenium-Remove-Driver to 1.33 (from 1.20)
- remove libtest-pretty-perl package, formatting gets handled by TAP now
- update test run command, because it wouldnt work before
- remove control file, its no longer used
- many cleanups
Change-Id: Ib31074b134afd257ba2669d708e886bb133b6ed3
every test file now calls $d->quit(); after they are done testing, regardless
if successful or not. new geckodriver version has some issues when driver
instances are not killed properly
Change-Id: If3d9ccf139d4459345d08b96c33e6d76a0831f8f
controller_domain.t:
- domain now gets created before empty domain tests gets executed. saves
some code lines and some time
Change-Id: I0ffcfd41eddc59cf90d60fbefbe64be5cd8f72f7
controller_customer.t:
- fill in more invalid ips, not only text (real invalid ips, invalid subnet
masks)
- add a second location block when location gets edited
- removed second search query. it wasnt really necessary since only one
element exists plus the first search already checks if location searches
work
Change-Id: I71505b3d5fd0d2958e1941fa57e827bf21362008
controller_billing.t:
- first use letters, then use not valid numbers for values in billing fee
- check error messages when saving with invalid values
Change-Id: Ie3bb6a2b024bfeb298043d5525e8ba58d0822648
controller_domain.t:
- re-enabled test "add empty ip into allowed ip's". TT#61401 was fixed, so
it works properly now
Change-Id: I53f1f62481bbb1b26a54ad86bf37e9cccea70820
controller_header.t:
- removed fill_element when checking if header rule condition was deleted,
since it isn't really necessary plus it causes problems with stale elements
Change-Id: I8e2c1ec89a0986531987b6fca07973104e18333f
runner.t:
- ctr_other and ctr_soundset will be executed by default now
- ctr_header still has some issues that need some attention
Change-Id: I71f4f359b8f83d88d898ab663155430553c9d473
runner.t:
- add controller_header.t to experimental test plan
- make controller_header.t manually executable
Change-Id: Ieb4414cf8380c021295f9cf53da78f01c2f02fe4
controller_subscriber:
- new test will lock and unlock subscriber by checking subscriber details
- checking for "subscriber is locked" messages will be activated later,
since those still have some issues
Change-Id: Idde45cc0ce957dd3d18ffa74c88f231f31fbcd9e
controller_peering.t:
- some move_and_click() fallback elements were missing, causing test issues.
added them now
Change-Id: I6dbde4d03bd31a1b675881b5048cb6eb0c35c218
controller_reseller.t:
- test will now go to reseller details to check if 'reseller is locked'
message appears
Change-Id: I486a362d04f61e8680dc8b71c23deb36d5505699
controller_soundset.t:
- create/edit/delelte sound set
- load default sound files with different options
runner.t:
- add controller_soundset.t to experimental test plan
- make controller_soundset.t manually executable
Change-Id: I1b547e6f914507bdaa87724baf4edfaefd76425f
controller_header.t:
- create a rewrite rule set, to add it to header actions/conditions later
- see if rewrite rule set got added
- delete it after test is done
Change-Id: I2f3553eb196f57642559fa3c3566ee7d91d37631
controller_header.t:
- create/edit/delelte header rule set
- create/edit header rule
- check if a second header rule moves up
- delete second header rule
- create/edit/delete header condition
- create/edit header action
- check if a second header action moves up
- delete header action
runner.t:
- add controller_header.t to experimental test plan
- make controller_header.t manually executable
Change-Id: I0cd3c9f3a6b388a0de848ca434926ccbb3620aa2
controller_billing.t:
- try to fill in invalid values in time def
- add empty time def
- try to fill in invalid values in Special off-peak date
- edit Special off-peak date
Change-Id: Ic2a8c83bea2f055cdb259d7f4ab3eb5c21d0df03
controller_customer.t:
- try to insert invalid values, see if they get rejected
- check error messages
Change-Id: I0d698b3cde54bb175cbc53847736e7835c25fa05
Common.pm:
- reworked arguments system. pbx tests require 'pbx' flag, creating locked
accounts requires 'locked' flag
controller_customer.t:
- edit functions to use this new flag system
- addting test to check in customer details if customer is locked. unlock
it afterwards
Change-Id: I02bfae8a9db6afbad4d5bb1b5a17cd8913c7ffa7
controller_admin.t:
- remove some lines to prevent a unnecessary double search
- edit admin now also edits the name, just like in other scripts
Change-Id: Ie53298f90a0db713bd74329d3d7429750ddab709
controller_billing.t:
- rewritten tests, because trying to add new tests in the old code was pain
- added proper deletion and edit tests
Change-Id: I8d1e0149dfbf65f6c95a7eb4b80b2c84827b5838
controller_billing.t:
- edit diag texts
- change name when editing billing profile, just like in other scripts
- check prepaid setting when editing billing profile
Change-Id: I3e54440477a3d6e20b711f5a96550d4eeda7ec39
controller_reseller.t:
- unlock reseller after locking reseller test was succesfull
prevents some issues when editing reseller
Change-Id: I3aaeb2130b0c3f8616051b9e19e0d9e9c4cca21a
controller_rw_ruleset.t:
- alert checks now print the actual displayed text if check fails
- add missing check
Change-Id: I8e1a371819af4a4427a91f308e574351b671ff0d
controller_peering.t:
- alert checks now print the actual displayed text if check fails
- added missing checks
- removed unnecessary lines
Change-Id: I39354beb92ca2e94972b14a1b91ed2e4875ab5bd
controller_ncos.t:
- alert checks now print the actual displayed text if check fails
- added missing checks
- fixed one diag string
Change-Id: I240e9fe78c468ec1a8d203efc38936ab7e6eb825
controller_emergency.t:
- alert checks now print the actual displayed text if check fails
- removed some unnecessary lines
Change-Id: Ie7ea450e478e934a91fc136a1cd3cfa190ef6823
controller_invoice.t:
- alert checks now print the actual displayed text if check fails
- removed some unnecessary lines
Change-Id: Ic4dec184991f4601c5ce7dee8b3caa2a3bdd31fb
controller_billing.t:
- alert checks now print the actual displayed text if check fails
- added missing alert checks
- removed unnecessary lines
Change-Id: Iba76480349f08dc8d857fcaa195a20af78d382e1
controller_domain.t:
- alert checks now print the actual displayed text if check fails
- removed one unnecessary check
Change-Id: Idcab2a3222ba55145963116a10658e041d11046a
controller_subscriber.t:
- add more scroll_to_element to make sure target content is in sight
- add missing fallback elements to move_and_click()
Change-Id: Ifb68ed8e6a28cf5527333069241677d82d0fb3d7
controller_billing.t:
- temporarly disable a check for network blocks, since this one still creates
problems
Change-Id: I2601a729d4901ce4aaf587026d135ee70ee4fba1
controller_customer.t:
- alert checks now print the actual displayed text if check fails
- added missing alert checks
Change-Id: Id8df9c5c7340d24d08edc6ed6dd32e010af7debe
controller_customer.t:
- fix crash when changing account status (idk why it did work for so long
without any issues tbh)
Change-Id: I1f91331db443bd50f147f21e8487fd500f3f4735
controller_subscriber.t:
- add missing fallback element to move_and_click to fix crash on call
forward creation
Change-Id: Ib9007242fb32da2b7ef230a2a237c68839312ed5
controller_rw_ruleset.t:
- workaround, because for some reason, jenkins test doesnt want to open the
domain page after rw_ruleset was deleted
Change-Id: I9bb60f0a48357b02cac5d33c89a73f34cad0a05e
Common.pm:
- Capture a screenshot when a program crashes
- Filename will depend on which program crashed i.e ctr_domain crashes are
named crash_domain.png, etc
- NOTE: this will only trigger in jenkins, since /results usually isnt
mounted on workstations
Change-Id: I9b953ff2381ab19260ff4afbe2deeeff3ebc9188
controller_ncos.t:
- LNP carrier now gets created/deleted during this test, with the usual
checks (edit once, press cancel on delete once, etc)
- Re-enable LNP tests, since a LNP carrier gets created now + add new tests
for LNP entries
Change-Id: If3c422c90e3db076acb1b3367df57e32b192979f
controller_timeset.t:
- add checks to see if create/edit/delete labels show up and if they show
the correct text
Change-Id: I51c41ca052f7b1a0bcf090352ace0acaf85802c3
controller_rw_ruleset.t:
- first delete second caller #jenkins doesnt like that. disabled for now
- try to clone ruleset
- check if details are correct
- check if caller/callee are correct
Change-Id: Ifb6bb2dfea448f90f270bc8fb1bded6e6004406a
controller_subscriber.t:
- add checks to see if create/edit/delete labels show up and if they show
the correct text
Change-Id: I042201738176e76011783631b31f2db08b3e0b37
controller_rw_ruleset.t:
- add checks to see if create/edit/delete labels show up and if they show
the correct text
- improved xpath once
Change-Id: Id160f57269681a7e62c9015639da5f3672f81202
moved crash handler to Collection.pm, because copy pasting changes over
12 files is not fun =). also comparing differences in git is way easier
with this change
Change-Id: I0278bc4f85c6b6b2a1b56985c30b7100c0c93cd9
controller_reseller.t:
- add checks to see if create/edit/delete labels show up and if they show
the correct text
Change-Id: I2132be09750b384a8045ceb61dc4bc332b3971b4
controller_peering.t:
- add checks to see if create/edit/delete labels show up and if they show
the correct text
- check if outbound/inbound peering rule and peering server get properly
deleted
Change-Id: Iedb22a60c1ad4dbea1d476018263a28b3848ba74
controller_invoice.t:
- add checks to see if create/edit/delete labels show up and if they show
the correct text
Change-Id: I3468b491f418a66bfd3d8cbaec5892b9405f38eb
controller_invoice.t:
- add checks to see if create/edit/delete labels show up and if they show
the correct text
- removed unnecessary lines from the remove invoice template test
- edited one diag message which was showing the wrong thing
Change-Id: I0c978aa39089b8940e02424a633fb89305ed47de
- it will now detect more errors (errors with Oops! in the headline and
nginx erros)
- it prints more information now. (tab title and url)
- it looks nicer when some infos are not present (i.e when there is not
incident number or incident time availible)
- code looks nicer too
Change-Id: Id43c061e37fd2f6f18a82833892799e04a243dfe
- previously, selenium code was in its own subroutine due to a problem
how threading was done before, where it would execute files twice. since
the way how threading works has changed, this is not a problem anymore and
thus the code will be freed from its subroutine
- the code which checks if server or script errors occured was moved into
a new END block. try/catch silences error messages which is kinda suboptimal
when you need to debug issues
- this new END block will use a new variable called $run_ok to check if
the test run was fine or if something went wrong
- this should also make backporting of code much easier since git doesnt
like tabs at all
Change-Id: I6c6e61e05eabf442eff9f590168e4490393a5bb0
controller_emergency.t:
- add checks to see if create/edit/delete labels show up and if they show
the correct text
Change-Id: Id5aa3dab5ea37c7bb40c1f5b3ec562b147ea9eb2
Tests will now print some infos when they crash. If a server crash occured,
it will try to get the infos from the Sorry! page + ip of the server.
If it cannot detect server issues, it prints out timestamp and server ip.
Change-Id: I7be6f405503fd38eb334134294f45dff93a17ad5
controller_domain.t:
- add checks to see if create/delete labels show up and if the show the
correct text
- check error message when editing preference "concurrent_max"
- try to add a empty ip to preference "allowed_ips"
(not enabled for now, due to TT#61401)
Change-Id: Ie6990aaa1b245b7ebe0639e9ce8dc2d1b3ec1a07
controller_customer.t:
- add checks to see if create/delete labels show up and if the show the
correct text
Change-Id: If0cf0455b3d168721fcd88cfc6bb1dde98966bf3
controller_admin.t:
- add checks to see if create/delete labels show up and if the show the
correct text
Change-Id: Ie7520c518518624e3970d097b28dda93ed89b04b
controller_billing.t:
- add checks if create/delte labels show up and show the right text
- add a check if special date definition is deleted
Change-Id: Ie08c6640bab080184921af2c92f176856f5d16fb
controller_timeset.t:
- check error messages if input fields are emtpy
- check if entries are still there when you cancel deletion
- try to edit event dates and timesets to see if changes apply
- fill in invalid values on event creation to see if errors pop up
- disabled tests which cause problems currently due to bug TT#59866
Change-Id: Ib1bf186d4308f4efecd5a498e497bf7e655db678
controller_subscriber.t:
- check error messages if input fields are emtpy
- check if entries are still there when you cancel deletion
- try to edit subscriber profile sets/profiles and see if changes apply
Change-Id: I8e28cbf9580ea83c0722175736cbbb792c8aeff7
controller_rw_ruleset.t:
- check error messages if input fields are emtpy
- check details whem creating a rw_ruleset
- check if entries are still there when you cancel deletion
- check if invalid values in rule creating will be rejected
Change-Id: Id7c23cb4c338832fa8d806c4c540aa72a4b08ea4
controller_reseller.t:
- check error messages if input fields are emtpy
- try to change information everywhere
- check if entries are still there when you cancel deletion
Change-Id: I59b74608bb5c45b58fce9cb46d35faa6e1e7c79d
controller_peering.t:
- check error messages if input fields are emtpy
- try to change information everywhere
- check if entries are still there when you cancel deletion
- check if empty outbound peering rule gets created
Change-Id: I7a24d1752f644453464b2413c78c6b78c682d4a2
controller_ncos.t:
- check error messages if input fields are emtpy
- try to change information in ncos
- check if entries are still there when you cancel deletion
Change-Id: Icec3064c032d76ff7255ea35637d20ca0f8845d2
controller_subscriber.t:
- add a missing scroll_to_element, to prevent crashing if element is out
of screen
Change-Id: Iaa3b2007c17006ab2cb38d9209cedeade5f0e60d
controller_invoice.t:
- check error messages if input fields are emtpy
- try to change information in invoice templates
- check if entries are still there when you cancel deletion
Change-Id: I74e677bf3b74d5bd8e010692d0dd59325a58d31c
added tests to see if the entry is still here after the deletion has been
canceled to controller_admin.t and controller_billing.t
Change-Id: I62efb80edab1fc1f148863dbab7dfd0358a49073
controller_emergency.t:
- try to change information in both controller and mapping
- check for error messages if input fields are empty
- press "cancel" on first deletion and check if mapping/container is still
here
Change-Id: Ie89cb39a3ed80659ca503731a9f9bd13c6cb99d5
controller_domain.t:
- check if errors pop up when nothing is entered in the create window
- some more checks for allowed_ips
Change-Id: Ibb8e5199b5e444c68dfc8261659ca67287af3d8c
controller_admin.t:
- check if errors pop up when nothing is entered in the create window
- edit value "read-only" after creation"
- check if new admin is indeed in "read-only" mode
Change-Id: I63547f086e0aa061e372c44053f2abe8e16595e7
controller_customer.t:
- click save before entering anything, see if error messages pop up
- fill in invalid values, see if it gets rejected
- edit all elements once
Change-Id: I3e85a6b5774d08dabc918c0c826cbe428af9d88d
controller_billing.t:
- click save before entering anything, see if error messages pop up
- fill in invalid values, see if they get rejected
Change-Id: I790a2ce751a618332d3b6af9f7da73a2d06153a1
controller_domain.t:
- added fallback objects to every move_and_click(), so if the first try
fails, it can reset itself to another object and try again
Change-Id: If565ecc5489834754f7b3fe73491eb0753372780
testrunner:
- add option to launch a experimental test run, which will include all
tests including those which havent been added to the normal test plan
yet.
- this can be triggered by typing "experimental" or "exp" instead
of a filename.
runner.t:
- create experimental test plan if experimental arg is used.
Change-Id: I921664addbc0fa5c06c5d1a619baec82590eb8c0
controller_invoice.t:
- create a new invoice template
- check details
- create a new invoice
- add template and customer
- check details
- delete both
controller_reseller.t:
- moved invoice template test to controller_invoice.t
runner.t:
- added controller_invoice.t as an option to execute manually. it will be
added to the default test plan later when its more stable.
Change-Id: Iad373979fea68381e6e8d8ee140a4adb98861c32
Common.pm:
- create_customer() now requires a contact and billing profile
- will enable tests for invoices
controller_customer and controller_subscriber have been changed to use
create_customer() correctly
Change-Id: Icde5caf82205537f24dd2c6c6c1ee7476583e049
Common.pm:
- add new functions create_billing_profile() and delete_billing_profile()
- it now allows to specify a custom reseller, which will be important for
later tests
- these will be used for more tests in controller_customer
controller_billing.t
- adjusted code to use these new functions
Change-Id: Ied8bf9e579d77228dc1bc6c3ad7b0cdc0edb321a
controller_ncos.t:
- diasbled lnp tests, because some servers dont have any lnp carriers to
choose, which crashes the test
Change-Id: Ib6a169d33061e667eb3ae4e01bedd03332f72797
replaced every occurance of move_action + click with move_and_click. all
also have a fallback element if the click doesnt work first try.
Change-Id: I0489dacbda264d509c52016f259368666f3d5c15