From bbfbf2502df45577bbced5dc4bd909ca8bf371c4 Mon Sep 17 00:00:00 2001 From: Udo Spallek Date: Sat, 2 Dec 2006 16:32:26 +0000 Subject: [PATCH] Verbesserungen am testframework... --- .../testscripts/001CreateTestDatabase.t | 37 +++++++++++ t/selenium/testscripts/002CreateTestUser.t | 32 ++++++++++ t/selenium/testscripts/005UpdateDatabase.t | 62 +++++++++++++++++++ t/selenium/testscripts/K998DeleteTestUser.t | 9 +++ .../testscripts/K999DeleteTestDatabase.t | 35 +++++++++++ t/selenium/testscripts/README | 2 + 6 files changed, 177 insertions(+) create mode 100644 t/selenium/testscripts/001CreateTestDatabase.t create mode 100644 t/selenium/testscripts/002CreateTestUser.t create mode 100644 t/selenium/testscripts/005UpdateDatabase.t create mode 100644 t/selenium/testscripts/K998DeleteTestUser.t create mode 100644 t/selenium/testscripts/K999DeleteTestDatabase.t create mode 100644 t/selenium/testscripts/README diff --git a/t/selenium/testscripts/001CreateTestDatabase.t b/t/selenium/testscripts/001CreateTestDatabase.t new file mode 100644 index 000000000..cf0c2f6de --- /dev/null +++ b/t/selenium/testscripts/001CreateTestDatabase.t @@ -0,0 +1,37 @@ +### Create Database + +$sel->open_ok($lxtest->{lxadmin}); +$sel->title_is("Lx-Office ERP Administration -"); + +diag('Lock the system'); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"System sperren\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); + +diag("Create test database '$lxtest->{db}'"); +$sel->title_is("Lx-Office ERP Administration -"); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"Datenbankadministration\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +$sel->title_is("Lx-Office ERP / Datenbankadministration -"); +$sel->type_ok("dbuser", $lxtest->{dbuser}); +$sel->type_ok("dbpasswd", $lxtest->{dbpasswd}); +$sel->type_ok("dbuser", $lxtest->{dbuser}); +$sel->type_ok("dbhost", $lxtest->{dbhost}); +$sel->type_ok("dbport", $lxtest->{dbport}); +$sel->type_ok("dbdefault", $lxtest->{dbdefault}); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"Datenbank anlegen\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +$sel->title_is("Lx-Office ERP Datenbankadministration / Datenbank anlegen -"); +$sel->type_ok("db", $lxtest->{db}); +$sel->select_ok("encoding", "label=ISO 8859-1"); +$sel->click_ok("//input[(\@name=\"chart\") and (\@value=\"Germany-DATEV-SKR03EU\")]"); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"Weiter\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeoutlong}); +$sel->title_is("Lx-Office ERP Datenbankadministration / Datenbank anlegen -"); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"Weiter\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +$sel->title_is("Lx-Office ERP Administration -"); + +diag('Unlock the system'); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"System entsperren\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +$sel->title_is("Lx-Office ERP Administration -"); diff --git a/t/selenium/testscripts/002CreateTestUser.t b/t/selenium/testscripts/002CreateTestUser.t new file mode 100644 index 000000000..aaf51d439 --- /dev/null +++ b/t/selenium/testscripts/002CreateTestUser.t @@ -0,0 +1,32 @@ + +### Create new user +diag("Create test user '$lxtest->{testuserlogin}'"); +$sel->open_ok($lxtest->{lxadmin}); +$sel->title_is("Lx-Office ERP Administration -"); +$sel->click_ok("action"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +$sel->title_is("Lx-Office ERP Administration / Benutzer erfassen -"); +$sel->type_ok("login", $lxtest->{testuserlogin}); +$sel->type_ok("password", $lxtest->{testuserpasswd}); +$sel->type_ok("name", "Selenium"); +$sel->type_ok("email", "selenium\@lx-office.org"); +$sel->type_ok("signature", "Selenium Testuser"); +$sel->type_ok("tel", "0000"); +$sel->type_ok("fax", "1111"); +$sel->type_ok("company", "Sel-enium"); +$sel->type_ok("signature", "Selenium Testuser\nTestfirma"); +$sel->type_ok("address", "Testfirma"); +$sel->type_ok("steuernummer", "111-222-333-444"); +$sel->type_ok("co_ustid", "1234567"); +$sel->type_ok("duns", "0987654321"); +$sel->click_ok("dbdriver"); +$sel->type_ok("newtemplates", "seleniumtestuser"); +$sel->click_ok("menustyle"); +$sel->type_ok("Pg_dbhost", $lxtest->{dbhost}); +$sel->type_ok("Pg_dbname", $lxtest->{db}); +$sel->type_ok("Pg_dbport", $lxtest->{dbport}); +$sel->type_ok("Pg_dbuser", $lxtest->{dbuser}); +$sel->type_ok("Pg_dbpasswd", $lxtest->{dbpasswd}); +$sel->click_ok("action"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +$sel->title_is("Lx-Office ERP Administration -"); diff --git a/t/selenium/testscripts/005UpdateDatabase.t b/t/selenium/testscripts/005UpdateDatabase.t new file mode 100644 index 000000000..53a2e792a --- /dev/null +++ b/t/selenium/testscripts/005UpdateDatabase.t @@ -0,0 +1,62 @@ +### Update Database + +# NOTEST: some preruns for initializing missing parameters +$sel->open($lxtest->{lxadmin}); +$sel->click("//input[(\@name=\"action\") and (\@value=\"Datenbankadministration\")]"); +$sel->wait_for_page_to_load($lxtest->{timeout}); +$sel->type("dbuser", $lxtest->{dbuser}); +$sel->type("dbpasswd", $lxtest->{dbpasswd}); +$sel->type("dbuser", $lxtest->{dbuser}); +$sel->type("dbhost", $lxtest->{dbhost}); +$sel->type("dbport", $lxtest->{dbport}); +$sel->type("dbdefault", $lxtest->{dbdefault}); +$sel->click("//input[(\@name=\"action\") and (\@value=\"Datenbank aktualisieren\")]"); +$sel->wait_for_page_to_load($lxtest->{timeoutlong}); +$sel->title_is("Lx-Office ERP Datenbankadministration / Datenbank aktualisieren -"); + +my $count =0; + +while (){ # count the number of radiobuttons + eval { $sel->is_checked("//input[(\@id=\"$count\")]"); }; + if ( $@ ) { $count--; last; }; + $count++; +} + +#TEST: Now run the Tests + +$sel->open_ok($lxtest->{lxadmin}); +$sel->title_is("Lx-Office ERP Administration -"); + +#diag('Lock the system'); +#$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"System sperren\")]"); +#$sel->wait_for_page_to_load_ok($lxtest->{timeout}); + +diag('Update the database'); + +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"Datenbankadministration\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +$sel->title_is("Lx-Office ERP / Datenbankadministration -"); +$sel->type_ok("dbuser", $lxtest->{dbuser}); +$sel->type_ok("dbpasswd", $lxtest->{dbpasswd}); +$sel->type_ok("dbuser", $lxtest->{dbuser}); +$sel->type_ok("dbhost", $lxtest->{dbhost}); +$sel->type_ok("dbport", $lxtest->{dbport}); +$sel->type_ok("dbdefault", $lxtest->{dbdefault}); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"Datenbank aktualisieren\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeoutlong}); +$sel->title_is("Lx-Office ERP Datenbankadministration / Datenbank aktualisieren -"); + +for (my $i=0; $i <= $count; $i++){ + $sel->uncheck_ok("//input[(\@id=\"$i\")]"); +} + +#$sel->click_ok("//input[\@value=\"$lxtest->{db}\"]"); +$sel->check_ok("//input[\@name=\"db$lxtest->{db}\"]"); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"Weiter\")]"); +$sel->title_like( qr/Lx-Office ERP Datenbankadministration/ ); + +#diag('Unlock the system'); +#$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"System entsperren\")]"); +#$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +#$sel->title_is("Lx-Office ERP Administration -"); + diff --git a/t/selenium/testscripts/K998DeleteTestUser.t b/t/selenium/testscripts/K998DeleteTestUser.t new file mode 100644 index 000000000..f0c430e82 --- /dev/null +++ b/t/selenium/testscripts/K998DeleteTestUser.t @@ -0,0 +1,9 @@ +### Delete user +diag("Delete test user '$lxtest->{testuserlogin}'"); +$sel->open_ok($lxtest->{lxadmin}); +$sel->title_is("Lx-Office ERP Administration -"); +$sel->click_ok("link=$lxtest->{testuserlogin}"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +$sel->title_is("Lx-Office ERP Administration / Benutzerdaten bearbeiten -"); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"Löschen\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); diff --git a/t/selenium/testscripts/K999DeleteTestDatabase.t b/t/selenium/testscripts/K999DeleteTestDatabase.t new file mode 100644 index 000000000..511fbd291 --- /dev/null +++ b/t/selenium/testscripts/K999DeleteTestDatabase.t @@ -0,0 +1,35 @@ +#### Delete database + + +$sel->open_ok($lxtest->{lxadmin}); +$sel->title_is("Lx-Office ERP Administration -"); + +diag('Lock the system'); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"System sperren\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); + +diag("Delete test database '$lxtest->{db}'"); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"Datenbankadministration\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +$sel->title_is("Lx-Office ERP / Datenbankadministration -"); +$sel->type_ok("dbhost", $lxtest->{dbhost}); +$sel->type_ok("dbport", $lxtest->{dbport}); +$sel->type_ok("dbuser", $lxtest->{dbuser}); +$sel->type_ok("dbpasswd", $lxtest->{dbpasswd}); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"Datenbank löschen\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeoutlong}); +$sel->title_is("Lx-Office ERP Datenbankadministration / Datenbank löschen -"); + +$sel->click_ok("//input[\@value=\"$lxtest->{db}\"]"); + +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"Weiter\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +$sel->body_text_is("Lx-Office ERP Datenbankadministration / Datenbank löschen $lxtest->{db} wurde erfolgreich gelöscht"); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"Weiter\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +$sel->title_is("Lx-Office ERP Administration -"); + +diag('Unlock the system'); +$sel->click_ok("//input[(\@name=\"action\") and (\@value=\"System entsperren\")]"); +$sel->wait_for_page_to_load_ok($lxtest->{timeout}); +$sel->title_is("Lx-Office ERP Administration -"); \ No newline at end of file diff --git a/t/selenium/testscripts/README b/t/selenium/testscripts/README new file mode 100644 index 000000000..70b4818d7 --- /dev/null +++ b/t/selenium/testscripts/README @@ -0,0 +1,2 @@ +All Selenium testscripts can be found here. The tests will be included +sequential from 001 to 999. \ No newline at end of file -- 2.20.1