c# - 如何在 Visual Studio 中测试 API 服务

标签 c# visual-studio-2010 web-services api

如何在 Visual Studio 2010 中使用调试服务?我想做的是在处理请求时单步执行代码。

我通过右键单击解决方案中的网站项目 (C:...\APIServiceSite) 并选择“在浏览器中查看”来运行该服务。一切运行正常,我从服务中得到了预期的结果,但我无法找到一种方法来单步执行同一解决方案中另一个项目(APIService)中的代码。

最佳答案

我突然想到:右键单击服务项目并选择“调试”>>“启动新实例”。然后在您的网络“测试”应用程序上开始调试。您现在应该能够实现您的愿望。 (因为这超出了我的想象,如果失败,它非常接近正确的答案)。

更好的选择是将功能移至类库中并使 Web 服务项目变得非常精简(本质上是从类库程序集返回调用)。然后,您可以使用单元测试库来测试业务功能,例如 MSTest(内置于 Visual Studio 的大多数团队系统 SKU)或 nUnit(等)。当然,测试可能是集成测试,但您完成了两件好事:

  1. 您可以将 UI 排除在测试方程式之外,这样您就可以专注于业务逻辑
  2. 您创建可重复的测试(思考科学,而不是艺术)

我发现在 UI 项目中包含移动部件是一种非常糟糕的模式,除非移动部件专注于数据的呈现。是的,我将 Web 服务视为 UI,即使用户是应用程序而不是人体。

关于c# - 如何在 Visual Studio 中测试 API 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9179013/

相关文章:

c++ - Qt Creator 找不到cl.exe(VS2012)编译器

mysql - C# 到 MY SQL 延迟查询执行

java - 使用 WSDL 从客户端发送到 Web 服务的对象在 Web 服务上为 null,但在客户端中却不是,为什么?

c# - WCF [DataContract] 设置/获取未执行

c# - 使用 TypeConverter 进行依赖注入(inject)

c# - Windows 通用应用程序全屏按钮

c# - 不同固件中的协方差导致代码中断?

c++ - 为 MFC 界面开发自动翻译

java - Wss4jSecurityInterceptor 类未找到错误

java - 字符串参数通常在网络服务中自动转义吗?