2011-08-01 14 views

cevap

8

işaretle Genellikle test nelerin çalıştığını makine bilerek güvenmemelisiniz. Grid 2, makine yapılandırması sağlamak için uygulayabileceğiniz bir dizi geri arama dinleyicisi sağlar. Ancak, bir düğümün hangi test üzerinde çalıştığını görmek istiyorsanız API çağrılarından birini kullanabilirsiniz. Her iki bitiş noktaları göbek bulunabilir:

http://localhost:4444/grid/api/proxy

http://localhost:4444/grid/api/testsession

Ne

henüz belgelenmiştir. Fakat kaynağı görüyorsanız, nasıl çalıştığını görmek kolaylaşır. ProxyStatusServlet ve TestSessionStatusServlet'e bakmak istiyorsunuz.

+0

Teşekkür ederim nirvdrum. Kodu göreceğim. Bahsettiğin geri arama dinleyicileri, bir yerlerde herhangi bir şansla belgelenmiş mi? –

+0

Maalesef henüz değil. Ancak org.openqa.grid.internal.listeners paketindeki sınıflar için JavaDocs'a bakarsanız, devam edebilmeniz gerekir. Grid ayrıca, bu dinleyicileri çalışmalarının çoğunu gerçekleştirmek için dahili olarak kullanır, böylece bakabileceğiniz somut uygulamalar vardır. Dokümanlar ile sağlayabileceğiniz herhangi bir yardım da çok takdir edilecektir :-) – nirvdrum

+0

Ekim ayı başına kadar aşırı derecede meşgulüm ama bundan sonra da yardımcı olmak isterim. –

3
String hub = "grid_server_host"; //IP or hostname of GRID 

int port = 4444; // port no. 

HttpHost host = new HttpHost(hub,port); 

DefaultHttpClient client = new DefaultHttpClient(); 

String url = host + "/grid/api/testsession?session="; 

URL session = new URL(url + ((RemoteWebDriver) webdriver).getSessionId()); 

BasicHttpEntityEnclosingRequest req; 

req = new BasicHttpEntityEnclosingRequest("POST", session.toExternalForm()); 

org.apache.http.HttpResponse response = client.execute(host,req); 

JSONObject object = new JSONObject(EntityUtils.toString(response.getEntity())); 

String proxyID = (String) object.get("proxyId"); 

String node = (proxyID.split("//")[1].split(":")[0]);