Sizing totally depends upon use case -> what you are planning to test. For sure we cant test all the functionalities in one go. What you can do is
1) Ensure all VM's are deployed in thin format- Management and Workload
2) Virtual Machine testing ,use DSL(Linux distro) - Can't test all features with this -L2/L3/LB/DFW is possible -not identity based IDFW.
3) NSX Manager resource can be tweaked ,but don't go too low - 1-2 VCPU with 4-5gb Ram is required
4) Deploy Just one controller and limit the resource to 1 vCPU and 1-2 gb Ram
VMware Hol Labs are great so use it whenever situation demands - advanced routing,two site testing with DR etc etc.