我实际上正在测试网络的Web服务。与Nunit和Gallio等单位测试人员合作。
实际上,我有一个问题。我想测试一个服务,我必须在html中填写大量数据,就像处方集一样。问题是我正在手动编辑xml来进行测试......它太麻烦和沉重,因此,我正在寻找一种灵活的方法来做到这一点。
我的老板告诉我做一个处方集,我可以填写所有字段,比如html,然后用它创建一个xml。比手动编辑基础xml更有效。
有一种工具可以帮助我吗?
抱歉我的英语不好。
答案 0 :(得分:0)
答案 1 :(得分:0)
也许测试数据构建器可能适合您?您可以编写类,以便您可以在测试中编写
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();
我可能会用它。
答案 2 :(得分:0)
由于模拟环境和http请求所涉及的工作,我们决定不通过Web服务对我们的代码进行单元测试。
相反,我们将尽可能多的代码移动到'核心'组件,它不依赖于Web框架(在我们的例子中是ASP.NET,所以'核心'没有参考到像System.Web这样的程序集。
依赖于Web框架的代码保留在'web'组件中。我们尽量保持这一点 - 它通常处理身份验证,授权,转换请求并调用“核心”中的相应功能来处理它。
我们尝试将公共接口完全单元测试为“核心”,但我们不会尝试对“网络”界面进行单元测试。我们计划使用不同类型的自动化测试来测试“网络”。