2008-12-17 114 views
2

我使用硒在我们当前的应用程序的UI上运行一些功能测试。ASP.Net资源文件

我想确保Web项目中的资源文件中的字符串显示在正确的时间和地点。

简单(我以为)我所要做的就是引用Web应用程序的组合件并断言文本硒从UI中读取与适当的资源文件中的测试相匹配。

问题是ASP.Net会对资源文件进行一些预编译处理,并将其编译到名为App_GlobalResources的程序集中,该程序集不是由常规构建过程创建的,因此功能测试失败,因为找不到App_GlobalResources程序集查看字符串。

那么,有什么建议吗?我是否需要放弃App_GlobalResources方法并执行一些我可以控制的手动操作?

您是否了解该问题或需要提供更多信息?

回答

1

我的临时解决方案是使用SVN:Externals将resx文件的副本拖放到测试项目中。

然后我就可以通过

 
ResourceManager resource = new System.Resources.ResourceManager("My.Web.Namespace.resources.ImageUrls", Assembly.GetExecutingAssembly()); 

访问这些丑陋的,因为我已经有了一个对webproject(我大概可以现在删除...)的参考,我不喜欢混合项目之间的源文件。这只是想要问题,但直到有人提出更好的建议,这将不得不做。

1

您是否考虑将您的GlobalResources移动到单独的程序集中,然后从Web项目和测试项目中引用它?这在VS 2008中很容易实现,并且可以实现,但是在VS 2005中更难。

我能够使用该方法解决类似问题。

+0

你能提供一些关于你如何管理这种方法的更多信息吗? – 2010-03-16 14:36:47