Index: [Article Count Order] [Thread]

Date:  Fri, 01 Feb 2002 18:22:22 +0900
From:  Sayaka Ishii <ishiisyk@....jp>
Subject:  [XP-jp:03181] Cactus を使った JSP のテスト
To:  extremeprogramming-jp@....jp
Message-Id:  <IBEFLIGAFBKGFKKBMOMDCEFCCGAA.ishiisyk@....jp>
X-Mail-Count: 03181


はじめまして。
石井と申します。

Cactusを使って、JSPのテストを行いたいのですが、
requestとsessionを使った値の受け渡しがうまくいきません。

テスト対象のJSP
------------------------------------------------------------
<html>
  <body>
<%
    String no = request.getParameter("No");
    request.addParameter("No", no);

    String id = session.getAttribute("Id");
    session.setAttribute("Id", id);
%>
	No:<%= no %>
	Id:<%= id %>
  </body>
</html>
------------------------------------------------------------


テストケース
------------------------------------------------------------
public class TestJspTestCase extends JspTestCase {

    public TestJspTestCase(String theName) {
        super(theName);
    }

    public static void main(String[] theArgs) {
        junit.ui.TestRunner.main(new String[]
{TestJspTestCase.class.getName()});
    }

    public static Test suite() {
        // All methods starting with "test" will be executed in the test
suite.
        return new TestSuite(TestJspTestCase.class);
    }

    public void beginTestSession(ServletTestRequest theRequest) {
        theRequest.setURL("jakarta.apache.org", null, "/test/test.jsp",
null, null);
        theRequest.addParameter("No", "7");
        session.setAttribute("Id", "1");
    }

    public void testSession() throws Exception {
        assertEquals("7", (String)request.getParameter("No"));
        assertEquals("1", (String)session.getAttribute("Id"));
    }
------------------------------------------------------------

これでテストを実行すると、
junit.framework.AssertionFailedError: expected:<7> but was:<null>
となってしまいます。

環境は、
Windows2000
Cactus ver1.1
Tomcat4.0_b5
JUnit3.7
Ant1.4.1
です。

ご存知の方がいらっしゃいましたら、何卒よろしくお願いいたします。