はじめまして。
石井と申します。
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
です。
ご存知の方がいらっしゃいましたら、何卒よろしくお願いいたします。