This is summary of gap analysis done on Marvin tests that touch the virtual router functionality.
Networking in CloudStack is feature rich and flexible. Networks can be composed with flexible set of services. Network can be deployed in many different models. Here is the listing of some of the dimensions in which networks and functionality can be deployed/used.
test_01_vpc_remote_access_vpn
test_01_vpc_site2site_vpn
test_01_redundant_vpc_site2site_vpn
test_01_create_redundant_VPC_2tiers_4VMs_4IPs_4PF_ACL
test_02_redundant_VPC_default_routes
test_03_create_redundant_VPC_1tier_2VMs_2IPs_2PF_ACL_reboot_routers
test_04_rvpc_network_garbage_collector_nics
Test_05_rvpc_multi_tiers
test_01_VPC_nics_after_destroy
test_02_VPC_default_routes
test_01_RVR_Network_FW_PF_SSH_default_routes_egress_true
test_02_RVR_Network_FW_PF_SSH_default_routes_egress_false
test_03_RVR_Network_check_router_state
test_01_isolate_network_FW_PF_default_routes_egress_true
test_02_isolate_network_FW_PF_default_routes_egress_false
test_01_single_VPC_iptables_policies
test_02_routervm_iptables_policies
test_01_router_internal_basic
test_02_router_internal_adv
test_03_restart_network_cleanup
test_04_restart_network_wo_cleanup
test_05_router_basic
test_06_router_advanced
test_07_stop_router
test_08_start_router
test_09_reboot_router
test_router_dhcphosts
test_dedicateGuestVlanRange
test_01_internallb_roundrobin_1VPC_3VM_HTTP_port80
test_02_internallb_roundrobin_1RVPC_3VM_HTTP_port80
test_03_vpc_internallb_haproxy_stats_on_all_interfaces
Test_04_rvpc_internallb_haproxy_stats_on_all_interfaces
test_01_create_lb_rule_src_nat
test_02_create_lb_rule_non_nat
test_assign_and_removal_lb
test_nic_secondaryip_add_remove
Smoke: test_network.py
test_public_ip_admin_account
test_public_ip_user_account
test_01_port_fwd_on_src_nat
test_02_port_fwd_on_non_src_nat
test_guest_traffic_port_groups_isolated_network
test_reboot_router
test_releaseIP
test_delete_account
Test_network_rules_acquired_public_ip
Smoke: test_networkacl.py
Test_network_acl
Smoke: test_nic.py
test_01_nic
Smoke: test_non_contiguous_vlans.py
test_extendPhysicalNetworkVlan
Smoke: test_password_server.py
Test_isolate_network_password_server
Smoke: test_portable_publicip.py
Smoke: test_privategw_acl.py
Smoke: test_public_ip_range.py
test_dedicatePublicIpRange
| S.no | Features | Availability in Regression suite |
|---|---|---|
| ISOLATED VR | ||
| 1 | Egress Firewall Rules | Sanity cases Automated |
| 2 | Network Services : DHCP , DNS , Static Nat , Source Nat , Port Forwarding | Sanity cases Automated |
| 3 | Persistent Networks | Sanity cases Automated |
| 4 | Firewall and LoadBalancer | Sanity cases Automated |
| 5 | Password Reset Service | Manual Testing Required |
| 6 | User Data Services | Manual Testing Required |
| 7 | Reset SSh Key pair | Manual Testing Required |
| 8 | Network Update on RVR - CIDR , Network Offerings change | Manual Testing Required |
| 9 | Network Update on Isolated VR's - CIDR , NW Offerings change | Sanity cases Automated |
| 10 | Redundant Virtual Routers | Sanity cases Automated |
| VPC / VPN | ||
| 11 | VPC | Sanity cases Automated |
| 12 | VPC RVR | Manual Testing Required |
| 13 | Inter Vlan Routing | Manual Testing Required |
| 14 | Access Lists | Sanity cases Automated |
| 15 | Static routes / Private Gateway | Sanity cases Automated |
| 16 | Remote access VPN on VPC | Manual Testing Required |
| 17 | Site - Site VPN | Sanity cases Automated |
| 18 | Remote Access VPN | Sanity cases Automated |
| 19 | VPN Users | Manual Testing Required |
| Basic / Miscellaneous | ||
| 20 | VR + external devices side by side | Sanity cases Automated |
| 21 | Service Monitoring tool in VR | Manual Testing Required |
| 22 | Shared Network | Sanity cases Automated - very basic |
| 23 | Advance Zone using Pvlan | Manual Testing Required |
| 24 | Manual VR Operations - Stop , start , Destroy ( DomR Testing ) | Manual Testing Required |
| 25 | Security Groups in Basic Zone | Manual Testing Required |
| 26 | Virtual Router Upgrades | Manual Testing Required |
| S. No | Module | Existing tests | Comments | Additional Marvin test required |
|---|---|---|---|---|
| 1 | Egress Firewall Rules | test_egress_fw_rules.py | Tests sufficiently covers TCP, ICMP protocols for both deny/allow default network offering behaviors. | CLOUDSTACK-9487: Egress rules marvin tests for UDP |
| 2 | Network services | test_network.py test_routers.py test_ha_proxy.py test_load_balancer.py test_security_groups.py test_vpn_service.py test_egress_fw_rules.py test_reset_ssh_keypair.py
| Most of the services has test cases except for DNS | CLOUDSTACK-9488: marvin tests for DNS |
| 3 | Persistent Networks | test_persistent_networks.py | Sufficiently automated | |
| 4 | Firewall and LoadBalancer | Sufficiently automated | ||
| 5 | Password Reset Service | test_vm_passwdenabled.py | covers password reset of the VM and VM password functionality | |
| 6 | Reset SSh Key pair | test_reset_ssh_keypair.py | Sufficiently automated | |
| 7 | Network Update on RVR - CIDR , Network Offerings change | |||
| 8 | ||||
| 9 | Network Update on Isolated VR's - CIDR , NW Offerings change | Sufficiently automated | ||
| 10 | Redundant Virtual Routers | test_redundant_router_cleanups.py test_redundant_router_services.py test_redundant_router_upgrades.py smoke: test_vpc_redundent.py | Test sufficiently covers RVR fail over scenarios. | |
| 11 | VPC Sanity cases | test_vpc.py | Sufficiently covered buy automation | |
| 12 | VPC RVR | test_vpc_redundant.py | Create a redundant VPC with two networks with two VMs in each network Create a redundant VPC with 1 Tier, 1 VM, 1 ACL, 1 PF and test Network GC Nics
| |
| 13 | Inter Vlan Routing | Not sufficiently covered | ||
| 14 | Access Lists | test_network.py | ||
| 15 | Static routes / Private Gateway | test_escalations_networks.py | listing pw gateways, -- No check for traffic flow | |
| 16 | Remote access VPN on VPC | |||
| 17 | Site - Site VPN | |||
| 18 | Remote Access VPN | test_escalations_vpncustomergateways.py test_vpn_service.py | # api test, pagination # Validate if IPSEC is running on the public, IP by using ike-scan | |
| 19 | VPN Users | test_vpn_users.py | VPN remote access user limit tests | |
20 | VR + external devices side by side | test_asa1000v_fw.py test_bigswitch_bcf.py | ||
| 21 | Service Monitoring tool in VR | NA | Not covered | |
| 22 | Shared Network | test_shared_networks.py Tests: | Sufficiently covered buy automation | |
| 23 | Advance Zone using Pvlan | NA | Not covered | |
| 24 | Manual VR Operations - Stop , start , Destroy ( DomR Testing ) | test_routers.py in components test_routers.py in smoke | Sufficiently covered buy automation | |
| 25 | Security Groups in Basic Zone | test_security_groups.py test_01_authorizeIngressRule | Sufficiently covered buy automation | |
| 26 | Virtual Router Upgrades | Not covered | ||
| 27 | ||||