Corporate security policy
Many corporations usually work on confidential apps and are behind the firewall.
A public cloud could put your app security and confidentiality at risk.
Device Availability and usage level
Many corporations have multiple dev and test teams.
Sometimes the QA teams need to run multiple regression test cases. Having an in-house test cloud really works out in the long run where they are not worried about device usage meter.
Access to premarket devices
Some corporations have access to premarket device that are not available on the Public cloud to do a prelaunch testing.
Adding these devices to your in-house test cloud helps you speed up the dev and test process.
Some of the apps could need special hardware or software access that may not be on the public cloud.
For example some companies may need access to certain carriers that may be hard for the public cloud to justify.
Existing Device pool
Most of the companies have multiple dev and test teams. Each team already could have procured multiple devices for their testing.
An in-house cloud will help pool all these devices in an company wide usage.