2010-09-02 50 views
2

我们使用MVC2开发了web应用程序。我在我们的网络应用程序中记录所有视图的webtests。我使用安装在单独机器上的VS2008测试版进行这些网络测试。处理包含文件上传的webtests时出错

我的问题是 - 我录制的网络测试失败了。该特定视图包含2个上传控件。

常见的错误是 -

  1. 请求失败:空路径名称是不合法的。
  2. 请求失败:Context参数“$ HIDDEN1.EParamList [0] .EParID”在测试范围内没有发现

有一件事我要在这里提到的是,我们已经使用JSON调用来调用控制器方法。我们已经这样做了,以避免回传。但是我们没有使用Json调用上传控件。因此,在webtest中记录的上传呼叫中,我可以看到所有其他传递给方法的空值参数。

通常我们所有的视图都包含选项卡,例如view1(view1.aspx)包含由用户控件(.ascx)表示的选项卡。 Telerik的tabstrip用来表示制表符。对于json调用,仅发送方法所需的参数,并且它们也可以在webtest中看到。但是,无论何时有任何回发(如上传),webtest都会显示此特定呼叫中的所有参数。

+0

你能向我们展示webtest代码吗? – Nat 2010-09-02 22:07:03

回答

0

很难说没有看到任何代码,WebTest会出现什么问题。

1.请求失败:空路径名称不合法。

我之前没有看到过这个特殊的错误信息,所以我只能猜测它是什么意思的按摩(所以我可能是错的)。我的建议是检查导致该错误的请求的发布参数,并检查“文件上载”节点的属性。可能是该参数中存在空白文件路径。

2.请求失败:Context参数 '$ HIDDEN1.EParamList [0] .EParID' 不 在测试上下文

这是很常见的消息中找到。这意味着当前请求引用的上下文参数丢失。如果隐藏字段“1”的提取规则不正确,则会发生这种情况。如果您检查所有执行响应后退,您可能会发现(现在不记得名称,但我认为它被称为细节)失败的提取规则。修复该规则应该解决第二个问题。

我正在研究可能对您感兴趣的WebTest recording and enhancing guide

谢谢, Maciej