C# 如何通过编程/编码实现Web服务测试自动化
我知道这些问题已经被问过很多次了,我仍然在寻找一个能满足我问题的答案。请看下面几点我想要的:C# 如何通过编程/编码实现Web服务测试自动化,c#,web-services,testing,asp.net-web-api,C#,Web Services,Testing,Asp.net Web Api,我知道这些问题已经被问过很多次了,我仍然在寻找一个能满足我问题的答案。请看下面几点我想要的: 首先,如何通过编程实现这一点。对于web自动化,我使用的是specflow C。我是否需要为web服务测试创建单元测试?通过编程可以做什么?soapUI被排除在外,因为它已经被手动测试人员使用了 是否有任何可用的框架 请给我支持他们的链接和例子 我知道这是一个广泛的问题。但是我确实需要大家的帮助,这样我就可以在API测试的正确方向上开始了。您的首要任务是了解您正在测试的web服务。您是否有可以提交到we
我知道这是一个广泛的问题。但是我确实需要大家的帮助,这样我就可以在API测试的正确方向上开始了。您的首要任务是了解您正在测试的web服务。您是否有可以提交到web服务的有效XML?如果是这样,请将其存储在某个位置,并创建一个从文件夹中获取的步骤。使用该XML作为测试用例,并遍历文件夹中的每个文件。根据您希望测试涵盖的内容,每个XML文件应该有所不同 通常,web服务测试将包括记录响应时间、发送不同风格的XML作为测试用例(改变节点的内容以覆盖不同的触发器),以及检查响应中的特定值 一个非常高层次的隐式场景可能是这样的(基于我曾经做过的事情): 该代码中使用的
CreateXMLInstance
方法将从文件路径加载XML,如下所示:
public XmlDocument CreateXmlInstance(string xmlPath)
{
//Loads XML from file path
XmlDocument request = new XmlDocument();
request.Load(xmlPath);
return request;
}
实际上,您已经创建了最初的几个步骤,并且可以将requestXml
变量存储为字段或存储在Specflow的ScenarioContext
中,以便稍后在执行web服务调用时使用
显然还有很多事情要考虑,但这可能会给你带来正确的方向。 我担心你的问题会因为太宽泛而结束。另外,不要使用
api
标签;您可能需要使用WebAPI
或更好的asp.NETWebAPI
。在使用之前,我需要一些答案!!请用你一直在做的一些研究更新你的问题。你熟悉单元测试吗?您是否已经知道可以使用哪些框架?你已经查过一些例子了吗?没有“正确的方向”这样的东西,这完全取决于你的具体需要,只要这些不完全清楚,这个问题就无法得到恰当的回答。很抱歉
[Given(@"I have XML file '(.*)'")]
public void GivenIHaveXMLFile(string fileName)
{
//Checks if file exists
if (System.IO.File.Exists(fileName))
{
var requestXml = CreateXMLInstance(fileName);
}
else
{
throw new Exception("No XML file found in specified location");
}
}
public XmlDocument CreateXmlInstance(string xmlPath)
{
//Loads XML from file path
XmlDocument request = new XmlDocument();
request.Load(xmlPath);
return request;
}