我实际上正在测试网络的网络服务。与 Nunit 和 Gallio 等单元测试人员合作。
其实我有问题。我想测试一项服务,我必须在 html 中填写大量数据,例如公式。问题是我正在手动编辑一个 xml 来进行测试......它太费力和沉重了,因为这个,我正在寻找一种敏捷的方法来做到这一点。
我的老板告诉我做一个公式,我可以填写所有字段,比如 html,然后用它创建一个 xml。比手动编辑基本 xml 更有效。
有什么工具可以帮助我吗?
对不起我的英语不好。
我实际上正在测试网络的网络服务。与 Nunit 和 Gallio 等单元测试人员合作。
其实我有问题。我想测试一项服务,我必须在 html 中填写大量数据,例如公式。问题是我正在手动编辑一个 xml 来进行测试......它太费力和沉重了,因为这个,我正在寻找一种敏捷的方法来做到这一点。
我的老板告诉我做一个公式,我可以填写所有字段,比如 html,然后用它创建一个 xml。比手动编辑基本 xml 更有效。
有什么工具可以帮助我吗?
对不起我的英语不好。
也许测试数据构建器可以为您工作?您可以编写类,以便您可以在测试中编写
var xml = new WebServiceCallBuilder()
.WithDefaultValues() // this sets most common options
.WithParamX("something") // which You can then modify
.WithParamY("something other")
.WithParamZ("another thing")
.Build();
var result = webService.Call(xml);
您还可以实现测试数据构建器,以便它启用诸如
var xyzBuilder = new WebServiceCallBuilder()
.WithDefaultValues()
.WithParamX("x")
.WithParamY("y")
.WithParamZ("z");
var xyzXml = xyzBuilder.Build();
// let's say now You want similar builder but with different Z param
// then You can do this to not copy/paste/modify code above
var xyzzzBuilder = new WebServiceCallBuilder(xyzBuilder)
.WithParamZ("zzz");
var xyzzzXml = xyzzzBuilder.Build();
我可能会使用它。
我们决定不通过 web 服务对我们的代码进行单元测试,因为模拟环境和 http 请求所涉及的工作量很大。
相反,我们将尽可能多的代码移动到“核心”组件中,该组件不依赖于 Web 框架(在我们的例子中是 ASP.NET,因此“核心”没有引用像 System.Web 这样的程序集)。
依赖于 web 框架的代码保留在“web”组件中。我们试图让它尽可能小——它通常处理身份验证、授权、翻译请求并调用“核心”中的适当功能来处理它。
我们尝试完全对“核心”的公共接口进行单元测试,但我们不尝试对“网络”接口进行单元测试。我们计划使用不同类型的自动化测试来测试“网络”。