protected override IEnumerable <ServiceInstanceListener> CreateServiceInstanceListeners()
 {
     return(new[]
     {
         new ServiceInstanceListener(
             (context) =>
         {
             // Use HTTP binding so that the client that coordinates the end-to-end test
             // can talk to this service via reverse proxy.
             return new WcfCommunicationListener <ILoadDriver>(
                 context,
                 this,
                 BindingUtility.CreateHttpBinding(),
                 (string)null);
         })
     });
 }
        private static ILoadDriver[] CreateLoadDrivers(string reverseProxyAddress, ServicePartitionList partitionList)
        {
            ILoadDriver[] loadDrivers = new ILoadDriver[partitionList.Count];
            int           i           = 0;

            foreach (Partition partition in partitionList)
            {
                // We use the reverse proxy to communicate with each partition of the
                // load driver service (which hosts the clients).
                string uri = GetUriExposedByReverseProxy(
                    LoadDriverServiceUri.AbsoluteUri,
                    partition,
                    reverseProxyAddress);
                loadDrivers[i] = ChannelFactory <ILoadDriver> .CreateChannel(
                    BindingUtility.CreateHttpBinding(),
                    new EndpointAddress(uri));

                i++;
            }
            return(loadDrivers);
        }