Projects:Login Page Clean Up/QA
Contents |
Automatic Tests
This project affects to the existing log-in and log-out processes, so the smoke tests currently covering those processes should be enough to ensure that the normal flows continue working fine.
Some minor changes has been introduced into the smoke tests. This is because these tests are waiting for the log-in page framesets to be loaded in order to start with the log-in. As these elements have been removed as part of this project, the tests should be adjusted in order to not look for the framesets.
Manual Tests
The following tests which involve the log-in page have been done manually in order to check that the log-in and log-out processes are working as expected:
TEST DESCRIPTION | RESULT | ADDITIONAL ACTIONS |
Activate License, show the 'Cache Clean' page. | OK | |
Log-in in WebPOS. | OK | |
Log-in having Openbravo rendered inside an iframe. | OK | |
Log-in with Google Account. | OK | Once this project is completed, this module will be using a deprecated API. See issue 35504. |
Redirect on session expiration. | OK | |
Password expiration. Create a new password. | OK | |
Locked users. | OK | |
On Demand Licenses: correct log-in and log-out when max concurrent users is reached. | OK | |
Log-in with an RTL language. | OK | |
Navigation to the link of a document. | OK | |
Startpage of the user preference. | OK | |
Forced Login URL preference. | OK |
Performance
The project aims to improve performance and the scalability of the log-in and log-out processes.
For example, as explained in the Specs section, the inline Javascript code of the main log-in page has been moved to a new static .js script containing the main functions used by this page. Besides, the required code included in other js scripts being imported until now has been moved to this new script. Thus, hereinafter the importation of the following files is not needed:
- ajax.js
- appStatus.js
- shortcuts.js
In the same way, a new css file has been created for the log-in page. It contains just the styles required for the page itself.
The following charts summarize some of the improvements achieved in terms of number of (not cached) requests and transferred size required by those processes:
Load Log-in Page
LOGIN PAGE | CACHE ENABLED | NUMBER OF REQUESTS | TRANSFERRED SIZE (KB) |
IMPROVED LOGIN PAGE | NO | 22 | 211 |
OLD LOGIN PAGE (WITH FRAMES) | NO | 30 | 506 |
IMPROVED LOGIN PAGE | YES | 2 | 9,5 |
OLD LOGIN PAGE (WITH FRAMES) | YES | 7 | 30,1 |
Log-in
LOGIN PAGE | CACHE ENABLED | NUMBER OF REQUESTS | TRANSFERRED SIZE (KB) |
IMPROVED LOGIN PAGE | NO | 123 | 9420,8 |
OLD LOGIN PAGE (WITH FRAMES) | NO | 124 | 9420,8 |
IMPROVED LOGIN PAGE | YES | 34 | 201 |
OLD LOGIN PAGE (WITH FRAMES) | YES | 35 | 201 |
Log-out
LOGIN PAGE | CACHE ENABLED | NUMBER OF REQUESTS | TRANSFERRED SIZE (KB) |
IMPROVED LOGIN PAGE | NO | 24 | 212 |
OLD LOGIN PAGE (WITH FRAMES) | NO | 33 | 508 |
IMPROVED LOGIN PAGE | YES | 4 | 10,6 |
OLD LOGIN PAGE (WITH FRAMES) | YES | 10 | 31,9 |
Note that these results have been obtained by using two different instances in the same version, but one of them having the changes of this project and the other one without them. Both instances have no modules in in development status.