首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Wicket页面测试,Jetty安全配置

Wicket页面测试,Jetty安全配置
EN

Stack Overflow用户
提问于 2015-03-25 00:57:38
回答 1查看 376关注 0票数 6

我正在尝试使用wicket页面测试来测试我的Wicket项目。

启动测试会导致Jetty抛出以下错误:

代码语言:javascript
运行
复制
2015-03-24 17:46:24,789 WARN  [:] [main] [] [||] - org.eclipse.jetty.webapp.WebAppContext - Failed startup of context o.e.j.w.WebAppContext
java.lang.IllegalStateException: No LoginService for org.eclipse.jetty.security.authentication.BasicAuthenticator@4c451268 in org.eclipse.jetty.security.ConstraintSecurityHandler@4abb90f6

我的testng套件如下所示:

代码语言:javascript
运行
复制
<suite name="wicket-page-test-sample">
<test verbose="2" name="tests" annotations="JDK">
    <packages>
        <package name="..."></package>
    </packages>
    <classes>
        <class name="com.ttdev.wicketpagetest.WebPageTestContext"></class>
        <class name="nl.pack.test.MessagePanelTest"></class>
    </classes>
</test>

测试类如下所示:

代码语言:javascript
运行
复制
@Test
public class MessagePanelTest
{
    public void testOpenComponent()
    {

        final StringBuffer log = new StringBuffer();
        MockableSpringBeanInjector.mockBean("hibernateService", mock(HibernateService.class));

        WicketSeleniumDriver ws = WebPageTestContext.getWicketSelenium();
        ws.openComponent(new ComponentFactory()
        {
            private static final long serialVersionUID = 1L;

            public Component createComponent(String id)
            {
                return new MessagePanel(mock(AjaxRequestTarget.class));
            }
        });
        assert ws.getText(By.id("info")).equals("Hello");
    }
}

我在互联网上找到了一些关于更改Jetty配置的建议,如下所示:

代码语言:javascript
运行
复制
    <?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
    <Get name="securityHandler">
        <Set name="loginService">
            <New class="org.eclipse.jetty.security.HashLoginService">
                <Set name="name">MySecurityRealm</Set>
                <Set name="config">src/test/resources/jetty-realm.properties</Set>
                <Call name="start"/>
            </New>
        </Set>
        <Set name="checkWelcomeFiles">true</Set>
    </Get>
</Configure>

但是我现在不会在我的测试中包含这个配置。我遗漏了什么?我应该如何为我的测试配置jetty?

EN

回答 1

Stack Overflow用户

发布于 2015-04-08 14:58:29

我不是java专家,但我搜索了您的问题,我找到了一些有用的链接Link 1 Link 2 link 3

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29238580

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档