Horizon/IntegrationTestsCoverage

[tsufiev] initially I tried to copy-paste here the content from http://etherpad.openstack.org/p/horizon-integration-tests but the process of re-formatting was so painful that eventually I gave up on this idea.

Usual expected data + Going to network by Network ID link Going to linked subnets by Subnet IDs Going back by breadcrumb Interfaces tab Add Interface Delete Interface Interface link gets us to Port Overview (see above) Static Routes Add / Delete Static Route
 * Navbar [toplevel]
 * User dropdown redirection to docs site
 * User logging in and logging out
 * Switching between 2 projects https://bugs.launchpad.net/horizon/+bug/1496063  +1 eshutova https://review.openstack.org/#/c/269703/
 * Logging into different Keystone endpoints
 * Switching between service regions
 * Switching domains
 * Settings [pseudo-dashboard]
 * -Changing every possible setting (including password change)-
 * Project [dashboard]
 * Compute [panel group]
 * Overview [panel]
 * Limits sanity (create some resources, check the SVGs annotation after)
 * Usage sanity (for a given period)
 * Table sanity
 * CSV sanity
 * Instances [panel]
 * Instance create [legacy] & delete https://review.openstack.org/#/c/117091/
 * Network selection (in case there is >1) during legacy Launch Instance is not yet covered
 * Multi-VM Launch Instance is not yet covered
 * Sanity of Project Limits during Launch Instance is not yet covered
 * Instance create [NG version] (will make sense to cover it as soon as Launch Instance NG is feature full and stable)
 * Instances filtering (ensure that it works by Name/Status/Image ID/Flavor ID) TatyanaGladysheva https://review.openstack.org/#/c/271204
 * Instances pagination (forward) TatyanaGladysheva https://review.openstack.org/#/c/269488/
 * Instance overview tab on clicking Instance name (check for a presence of expected info there)
 * Create Instance Snapshot
 * Associate FIP/ Disassociate FIP
 * FIP from a pool
 * FIP allocated during association
 * Attach/Detach Interface
 * Edit Name and Security Groups
 * Console access https://review.openstack.org/#/c/241025/
 * Console log (check for a presence of an expected CirrOS signature in case of CirrOS image?)
 * Pause / Resume
 * Lock / Unlock
 * Shelve / Unshelve
 * Resize
 * Soft Reboot TatyanaGladysheva
 * Hard Reboot
 * Shutoff
 * Rebuild
 * Volumes [panel]
 * Volumes [tab]
 * Volume create and delete Tatyana Kuterina  https://review.openstack.org/#/c/237044/
 * Volumes pagination
 * Accept Transfer
 * Volume Overview on clicking link
 * Edit https://review.openstack.org/#/c/237044/
 * Manage Volume Attachments Tatyana Kuterina
 * Extend Volume  Tatyana Kuterina https://review.openstack.org/#/c/267630
 * Launch as Instance Tatyana Kuterina https://review.openstack.org/#/c/267630/
 * Create Snapshot AlexandraAllakhverdieva https://review.openstack.org/#/c/240889
 * Create Backup
 * Change Volume Type Tatyana Kuterina https://review.openstack.org/#/c/267630/
 * Upload to Image Tatyana Kuterina https://review.openstack.org/#/c/267630/
 * Create Transfer
 * Volume Snapshots [tab]
 * Snapshot create (same as Volume->Create Snapshot) and delete  AlexandraAllakhverdieva https://review.openstack.org/#/c/240889
 * Snapshots pagination
 * Snapshot Overview on clicking link
 * Edit AlexandraAllakhverdieva   https://review.openstack.org/#/c/240889
 * Create Volume AlexandraAllakhverdieva https://review.openstack.org/#/c/240889/туецщкл
 * Volume Backups [tab]
 * Backup create (same as Volume->Create Backup) and delete
 * Backup Overview on clicking link
 * Backups pagination
 * Restore Backup
 * Images [panel]
 * Image create and delete
 * Image Overview on clicking link
 * Images pagination AlexandraAllakhverdieva https://review.openstack.org/#/c/268219/
 * Launch Instance [legacy]
 * Launch Instance [NG]
 * Create Volume
 * Edit
 * Update Metadata (is it possible to reuse some code from Project Manage Members PageObject's code?)
 * Access & Security [panel]
 * Security Groups [tab]
 * Security group create and delete https://review.openstack.org/#/c/156604/
 * Manage rules
 * Add / Delete Rule
 * Security Groups pagination (as soon as it's implemented)
 * Key Pairs [tab]
 * Keypair create and delete
 * Keypair overview
 * Key Pairs pagination (as soon as it's implemented)
 * Floating IPs [tab]
 * Floating IP allocate and release
 * Project Quotas sanity is not covered
 * Associate / Disassociate FIP
 * FIP pagination (as soon as it's implemented)
 * API Access [tab]
 * Download OpenStack RC File Mikhail Laptev https://review.openstack.org/#/c/268056/
 * Download EC2 Credentials Mikhail Laptev
 * User Credentials form (check that expected fields with expected values are present)
 * Network [panel group]
 * Networks [panel]
 * Create / Delete Network +1 https://review.openstack.org/#/c/139028/
 * Edit
 * Add Subnet +1
 * Networks pagination (as soon as it's implemented)
 * Network overview (by link)
 * Edit Network (same as from all Networks table)
 * Subnets table
 * Create / Delete Subnet (same as Add Subnet from Networks table) eshutova
 * Edit Subnet
 * Subnet Overview
 * Ports table
 * Edit Port
 * Port Overview (by link)
 * Routers [panel]
 * Create / Delete Router  https://review.openstack.org/#/c/260360/
 * Clear Gateway https://review.openstack.org/#/c/266776/
 * Edit
 * Router Overview (by link)

Network Topology [panel] +1, (mrunge: just visiting this, checking there is no error like server error seems to uncover many issues in installs) Launch Instance [legacy] (check that the same form as in Instances is shown / full path here?) AlexandraAllakhverdieva Check that Instance + Network are visible here Launch Instance [NG] (check that the same form as in Instances is shown / full path here?) Check that Instance + Network are visible here Create Network (check that the same form as in Networks is shown / full path here?) Create Router (check that the same form as in Networks is shown / full path here?) Check that created Router + public Network are visible here Toggle lables button sanity (labels show/hide) Toggle Network Collapse button sanity (Network - VM is collapsed into single node / expanded into 2 - well, we'll need at least 1 Instance and 1 Network here) Connectors sanity (VM - Network - Router - public Network) Load Balancers [panel] [Not knowing what's the actual state of LBaaS and its future in Horizon I'd like to pass filling this section to more competent people] Object Store [panel group] Cointainers [panel] [since neilc and r1chardj0nes are going to rework this panel, it's better to postpone writing tests until it happens] Orchestration [panel group] Stacks [panel] Stack create / delete https://review.openstack.org/#/c/266368/ Admin [dashboard] System [panel group] Overview [panel] Usage sanity (for a given period) Table sanity CSV sanity Hypervisors [panel] Charts sanity (scanning labels & comparing to Jenkins Node resources - is that possible at all?) Host Aggregates [panel] Create / Delete Host Aggregate   https://review.openstack.org/#/c/262323/3 Instances [panel] (reuse some work from Project->Instances) Instances filtering (ensure that it works by Name/Status/Image ID/Flavor ID/Project/Host/IP address) Tatyana Gladysheva https://review.openstack.org/#/c/271204 Instances pagination (forward) TatyanaGladysheva https://review.openstack.org/#/c/269488/ Instance overview tab on clicking Instance name (check for a presence of expected info there) row-level actions Create Instance Snapshot Associate FIP/ Disassociate FIP FIP from a pool FIP allocated during association Attach/Detach Interface Edit (name) Console access https://review.openstack.org/#/c/241025/ Console log (check for a presence of an expected CirrOS signature in case of CirrOS image?) check that breadcrumbs work (here or at any other tabs of the same level) Pause / Resume Suspend Shelve / Unshelve Soft Reboot TatyanaGladysheva Hard Reboot Migrate Live Migrate Delete Volumes [panel] Volumes [tab] Manage Volume row-level actions Update Volume Status Migrate Volume (most likely won't able to test it in a Devstack-backed OpenStack) Volume Overview and going by by a breadcrumb Volume Types [tab] Volume Types Create / Delete Volume TypeTatyana Kuterina https://review.openstack.org/#/c/267403/ row-level actions (looks a bit scary, is this UI going to change in the nearest future?) Create Encryption View Extra Specs Create / Delete key-value Edit key-value QoS specs Create / Delete QoS spec TatyanaGladysheva https://review.openstack.org/#/c/267361/ Manage specs (looks a bit scary, is this UI going to change in the nearest future?) Create / Delete key-value Edit key-value Edit Consumer TatyanaGladysheva https://review.openstack.org/#/c/267956/ Volume Snapshots [tab] row-level actions Delete Volume Snapshot  AlexandraAllakhverdieva https://review.openstack.org/#/c/240889 Update Status Flavors [panel] Flavor create and delete row-level actions Edit General Info Access Data Update Flavor metadata Images [panel] (reuse some work from Project->Images) Image create and delete  \\ AlexanderKoryagin  https://review.openstack.org/#/c/265955/ Image Overview on clicking link And returning back using breadcrumb Images pagination AlexandraAllakhverdieva https://review.openstack.org/#/c/268219/ Image Filtering  AlexandraAllakhverdieva https://review.openstack.org/270773 row-level actions Edit Update Metadata (is it possible to reuse some code from Project Manage Members PageObject's code?) Networks [panel] (reuse some work from Project->Networks) Create / Delete Network eshutova https://review.openstack.org/#/c/267521/ row-level actions Edit eshutova https://review.openstack.org/#/c/270161/ Networks pagination (as soon as it's implemented) Network overview (by link) Going back by breadcrumb (as soon as it's implemented) Edit Network (same as from all Networks table) Subnets table row-level actions Create Subnet (same as Add Subnet from Networks table) eshutova Delete Subnet Edit Subnet Subnet Overview And go back by a breadcrumb Ports table Create / Delete Port Edit Port Port Overview (by link) and go back by breadcrumb DHCP agents Add / Delete DHCP agent Routers [panel] (seems to have less features than Project->Networks->Routers and no additional features at all, is it worth testing/having?) Create / Delete Router row-level actions Edit Router Overview (by link) Usual expected data + Going to network by Network ID link Going to linked subnets by Subnet IDs Going back by breadcrumb Interfaces tab Add Interface Delete Interface Interface link gets us to Port Overview (see above) Defaults [panel] Update Defaults Optionally check if it's aligned with per-project Quota values (default Project Quotas should be same as system-wide Defaults Quotas, isn't it?) Metadata Definitions [panel] For background information on concepts, see: http://docs.openstack.org/developer/glance/metadefs-concepts.html Import / Delete Namespace \\ AlexanderKoryagin https://review.openstack.org/#/c/268039 Metadata Defs pagination Namespace overview (by link) General Info Contents Update Associations: Note can only be done when namespace is not protected Choose a metadata definition Chose Update associations action Associate with all resource types and add a prefix Save Open and ensure all resource types are selected and have the prefix Modify public / private  \\ AlexanderKoryagin Modify protected not protected  \\ AlexanderKoryagin Comprehensive integration test (just as FYI) would: Import new sample namespace Have it not be associated to any resource type Go to images --> Update Metadata Verify that the namespace is not shown Go back to namespaces page and associate it with OS::Glance::Image Go back to images --> Update metadata Verify that the namespace is now shown

System Information [panel] (since this panel is purely informational, i.e. no-op, no actions could be done here) Identity [dashboard] Domains [panel] Create / Delete Domain (requires MULTIDOMAIN_SUPPORT enabled in Horizon) Clear Domain Context row-level actions Enable / Disable Edit Info Domain Members Domain Groups Set Domain context Users [panel] User create and delete Create new project while creating new user https://bugs.launchpad.net/horizon/+bug/1496063 row-level actions Edit User (including changing Primary Project) Change Password Disable / Enable User Sanity check: User can't disable himself (i.e. disabling current user) User overview (by link) and going back by breadcrumb Projects [panel] Project create and delete row-level actions Edit project User editing his current project https://bugs.launchpad.net/horizon/+bug/1496063 Manage project members and quota https://review.openstack.org/#/c/168935 Manage Project Groups View Project Usage Enable / Disable Sanity check: disable of a current project is not allowed Inline Editing Name Check that change in name is reflected in Confirm Delete modal window, https://bugs.launchpad.net/horizon/+bug/1525226 Project Overview and going back by breadcrumb Groups [panel] Create / Delete Group row-level actions Manage Members Add / Delete Users Edit Group Roles [panel] Create / Delete Role Edit Role