我們必須爲我們所有的測試時啓動的Jetty服務器發佈和測試Web服務的方法:編程方式啓動碼頭在調試模式在Junit4方面
@Before
public void startJettyAndloadWSDL() throws Exception {
String port = System.getProperty("jetty.port");
server = new Server(Integer.valueOf(port));
WebAppContext webapp = new WebAppContext();
webapp.setSecurityHandler(getSecurityHandler()); // this is a local function in my test
webapp.setContextPath("/");
webapp.setWar(System.getProperty("jetty.war"));
server.setHandler(webapp);
// Is there an option somewhere to say "start Jetty in Debug mode"?
server.start();
service = new MyServiceToTest(new URL("http://127.0.0.1:" + port + "/WS/MyServiceToTest/1?WSDL"),
new QName("urn:myservicetotest.services.mycompany.com/1", "MyService")).getMyServicePort();
}
有什麼辦法說碼頭到在調試模式下啓動以在Eclipse中設置斷點?
該測試是使用外部Eclipse的Maven運行的,那麼在這種情況下最好做一個遠程調試? 我們不想與Eclipse有大的聯繫,那就是爲什麼我們在所有JUnits測試中啓動碼頭。
如果整個測試運行在調試模式,你的服務器也應該(因爲你在同一虛擬機啓動它)。 – oers 2012-03-21 14:37:48
感謝您的評論,它指向了正確的方式。 – 2012-03-27 08:10:35