[Bug 14536] New: PageObject-pattern base implementation
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Bug ID: 14536 Summary: PageObject-pattern base implementation Change sponsored?: --- Product: Koha Version: master Hardware: All OS: All Status: NEW Severity: enhancement Priority: P5 - low Component: Test Suite Assignee: chris@bigballofwax.co.nz Reporter: olli-antti.kivilahti@jns.fi QA Contact: gmcharlt@gmail.com This patch introduces: -PageObject base class and example tests, -a interactive debug script to drive PageObjects more easily. ------------------ PageObjects are used to make robust and reusable integration test components to test various front-end features. PageObjects load a Selenium::Remote::Driver implementation, phantomjs by default and use this to do scripted user actions in the browser, eg. clicking HTML-elements, accepting popup dialogs, entering text to input fields. PageObjects encapsulate those very low-level operations into clear and easily usable actions or services, like doPasswordLogin(). PageObjects also seamlessly deal with navigation from one page to another, eg. my $mainpage = t::lib::Page::Mainpage->new(); $mainpage->doPasswordLogin('admin', '1234')->gotoPatrons()-> searchPatrons({keywordSearch => "Jane Doe"}); PageObjects make doing integration tests so great! You can google for the specifics of PageObject patterns and there are a ton of great tutorials explaining their function. --------------------- Interactive debugger at misc/devel/interactiveWebDriverShell.pl loads the desired PageObject with the needed parameters to the debugger context and makes dynamic UserAgent scripting easy and fun! -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |http://bugs.koha-community. | |org/bugzilla3/show_bug.cgi? | |id=13691 -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 --- Comment #1 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 41023 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=41023&action=edit Bug 14536 - PageObject-pattern base implementation -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |13995, 13906, 14495 Referenced Bugs: http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=13906 [Bug 13906] TestObjectFactory(ies) for Koha objects. Enable easy Test object creation from HASHes or from preconfigured test groups. http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=13995 [Bug 13995] Proper Exception handling http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14495 [Bug 14495] WebDriver/WebTester Factory for easy generation of Web testing UserAgents. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |Needs Signoff -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |14540 Referenced Bugs: http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14540 [Bug 14540] Move member-flags.pl to PermissionsManager to better manage permissions for testing. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #41023|0 |1 is obsolete| | --- Comment #2 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 41052 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=41052&action=edit Bug 14536 - PageObject-pattern base implementation This patch introduces: -PageObject base class and example tests, -a interactive debug script to drive PageObjects more easily. ------------------ PageObjects are used to make robust and reusable integration test components to test various front-end features. PageObjects load a Selenium::Remote::Driver implementation, phantomjs by default and use this to do scripted user actions in the browser, eg. clicking HTML-elements, accepting popup dialogs, entering text to input fields. PageObjects encapsulate those very low-level operations into clear and easily usable actions or services, like doPasswordLogin(). PageObjects also seamlessly deal with navigation from one page to another, eg. my $mainpage = t::lib::Page::Mainpage->new(); $mainpage->doPasswordLogin('admin', '1234')->gotoPatrons()-> searchPatrons({keywordSearch => "Jane Doe"}); PageObjects make doing integration tests so great! You can google for the specifics of PageObject patterns and there are a ton of great tutorials explaining their function. Now PageObjects also have a debugging system where you can get the server response in a title+cookies+html-dump and a screenshot of the browser session. see t::lib::Page for more info! --------------------- Interactive debugger at misc/devel/interactiveWebDriverShell.pl loads the desired PageObject with the needed parameters to the debugger context and makes dynamic UserAgent scripting easy and fun! -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 --- Comment #3 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 41057 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=41057&action=edit PageObject-pattern schematic and usage example sketch -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Assignee|chris@bigballofwax.co.nz |olli-antti.kivilahti@jns.fi -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #41052|0 |1 is obsolete| | --- Comment #4 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 41121 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=41121&action=edit Bug 14536 - PageObject-pattern base implementation -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #41121|0 |1 is obsolete| | --- Comment #5 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 41156 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=41156&action=edit Bug 14536 - PageObject-pattern base implementation -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #41156|0 |1 is obsolete| | --- Comment #6 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 41254 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=41254&action=edit Bug 14536 - PageObject-pattern base implementation -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 --- Comment #7 from Lari Taskula <larit@student.uef.fi> --- Created attachment 41460 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=41460&action=edit Bug 14536: (follow-up) Add Memberentry PageObject and navigations This follow-up adds Memberentry PageObject and adds navigations to memberentry page. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Lari Taskula <larit@student.uef.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |14620 Referenced Bugs: http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14620 [Bug 14620] Contact information validations -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 --- Comment #8 from Lari Taskula <larit@student.uef.fi> --- Created attachment 41524 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=41524&action=edit Bug 14536: (follow-up) Add OpacMessaging, Circulation and LeftNavigation for Members/Circulation pages in Staff Client -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 --- Comment #9 from Lari Taskula <larit@student.uef.fi> --- Created attachment 41525 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=41525&action=edit Bug 14536: (follow-up) Add more functionalty for handling messaging preferences - Fixes memberentry form submit to return Circulation PageObject. - Prevents missing element errors at different steps of memberentry page. Patron modification has multiple different steps (full edit, information edit, sms number edit, library use edit, alternate address edit, alternative contact edit). Some of the input fields required for validation are not always present in each step of these modifications. - Adds functionality to check checkboxes and validate if they are checked or not - Adds navigation to moremember edit links. - Adds navigation to opac-messaging -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #41254|0 |1 is obsolete| | Attachment #41460|0 |1 is obsolete| | Attachment #41524|0 |1 is obsolete| | Attachment #41525|0 |1 is obsolete| | --- Comment #10 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 41534 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=41534&action=edit Bug 14536 - PageObject-pattern base implementation -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Lari Taskula <larit@student.uef.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks|14620 | Referenced Bugs: http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14620 [Bug 14620] Contact information validations -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 --- Comment #11 from Lari Taskula <larit@student.uef.fi> --- Created attachment 41678 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=41678&action=edit Bug 14536: (follow-up) Adds polling to Page.pm and enhances navigation. This follow-up adds a subroutine poll to superclass Page.pm. Polling will execute an anonymous subroutine for as long as defined or until the subroutine is successful. Also adds enchancements to navigation success confirmations. In earlier versions, the modify patron page (memberentry.pl) defines page title as follows: Modify <category> patron <name> But in current version it is defined as follows: Modify patron <name> (<category>) Instead of checking for title "Modify patron", we now check for "Modify(.*)patron" for determining if we are on the right memberentry.pl page. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |14719 Referenced Bugs: http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14719 [Bug 14719] Regression tests for members/statistics.pl -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 --- Comment #12 from Lari Taskula <larit@student.uef.fi> --- Created attachment 42060 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=42060&action=edit Bug 14536: (follow-up) Add PageObject for members/notices.pl This patch adds a new PageObject Notices for members/notices.pl page. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Lari Taskula <larit@student.uef.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |14723 Referenced Bugs: http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14723 [Bug 14723] Additional delivery notes to messages -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 --- Comment #13 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 42111 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=42111&action=edit Bug 14536 - PageObject squashable -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Lari Taskula <larit@student.uef.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #42060|0 |1 is obsolete| | --- Comment #14 from Lari Taskula <larit@student.uef.fi> --- Created attachment 42118 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=42118&action=edit Bug 14536: (follow-up) Add PageObject for members/notices.pl -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #42111|0 |1 is obsolete| | --- Comment #15 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 42136 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=42136&action=edit Bug 14536 - PageObject squashable -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Zeno Tajoli <z.tajoli@cineca.it> changed: What |Removed |Added ---------------------------------------------------------------------------- Patch complexity|--- |Large patch CC| |z.tajoli@cineca.it --- Comment #16 from Zeno Tajoli <z.tajoli@cineca.it> --- Patch complexity is 'Large' because this change has many architectural connections -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Zeno Tajoli <z.tajoli@cineca.it> changed: What |Removed |Added ---------------------------------------------------------------------------- CC|z.tajoli@cineca.it | -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Lari Taskula <larit@student.uef.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #42118|0 |1 is obsolete| | --- Comment #17 from Lari Taskula <larit@student.uef.fi> --- Created attachment 42160 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=42160&action=edit Bug 14536: (follow-up) Add PageObject for members/notices.pl Forgot to call polling in navigateToNotices at LeftNavigation.pm. Here is a fix for it. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Lari Taskula <larit@student.uef.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks|14723 | Referenced Bugs: http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14723 [Bug 14723] Additional delivery notes to messages -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #42136|0 |1 is obsolete| | --- Comment #18 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 42433 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=42433&action=edit Bug 14536 - PageObject squashable -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #42433|0 |1 is obsolete| | --- Comment #19 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 42435 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=42435&action=edit Bug 14536 - PageObject squashable -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Lari Taskula <larit@student.uef.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #42160|0 |1 is obsolete| | --- Comment #20 from Lari Taskula <larit@student.uef.fi> --- Created attachment 42716 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=42716&action=edit Bug 14536: (follow-up) Add PageObject for members/notices.pl Adds subroutines for opening and resending messages in Patron's Notices table. -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 --- Comment #21 from Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> --- Created attachment 44410 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=44410&action=edit Bug 14536 - PageObject squashable - Waitingreserves -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 Olli-Antti Kivilahti <olli-antti.kivilahti@jns.fi> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |10744 Referenced Bugs: http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=10744 [Bug 10744] ExpireReservesMaxPickUpDelay works with hold(s) over report -- You are receiving this mail because: You are watching all bug changes.
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14536 --- Comment #22 from Lari Taskula <larit@student.uef.fi> --- Created attachment 47254 --> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=47254&action=edit Bug 14536 (follow-up) - New PageObjects for handling Fines Adds PageObjects that can handle the Fines tab. -- You are receiving this mail because: You are watching all bug changes.
participants (1)
-
bugzilla-daemon@bugs.koha-community.org