Есть ли рабочий пример входа в HTMLUnit и несколько кликов

Возможно, показывает поддержку тестирования Javascript

 
package htmlunitpoc;

import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlForm;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import com.gargoylesoftware.htmlunit.html.HtmlSubmitInput;

/**
 *
 * @author 
 */
public class HtmlPoc {

    /**
     * @param args the command line arguments
     */
   public static void main(String[] args) throws Exception {

        WebClient wc = new WebClient();
                HtmlPage page = (HtmlPage) wc.getPage("http://www.google.com");
                HtmlForm form = page.getFormByName("f");
                HtmlSubmitInput button = (HtmlSubmitInput) form.getInputByName("btnG");
                HtmlPage page2 = (HtmlPage) button.click();

    }


}

но я получаю:

17 ноября 2010 г. 15:41:14 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify ПРЕДУПРЕЖДЕНИЕ. Обнаружен устаревший тип контента: 'text/javascript'. ПОСТРОИТЬ УСПЕШНО (общее время: 4 секунды)

Что не помогает, так как он не работает как модульный тест и показывает Pass/Fail и т. д.

Я использую нетбинс 6.9.1


person kamal    schedule 17.11.2010    source источник
comment
Какое это имеет отношение к https в названии?   -  person LarsH    schedule 11.05.2011


Ответы (1)


Это потому, что вы не написали это как модульный тест. HtmlUnit назван несколько неправильно, так как это не сам тестировщик, а «безголовый браузер», который позволяет вам взаимодействовать с веб-сайтом из Java, как если бы вы были браузером.

Попробуйте это вместо этого:

import junit.framework.TestCase;

import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlForm;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import com.gargoylesoftware.htmlunit.html.HtmlSubmitInput;

public class HtmlPoc
    extends TestCase
{
   public void test()
      throws Exception
    {
        WebClient wc = new WebClient();
        HtmlPage page = (HtmlPage) wc.getPage("http://www.google.com");
        HtmlForm form = page.getFormByName("f");
        HtmlSubmitInput button = (HtmlSubmitInput) form.getInputByName("btnG");
        HtmlPage page2 = (HtmlPage) button.click();
        assertNotNull( page2 ) ;
    }
}
person Rodney Gitzel    schedule 19.11.2010