为了账号安全,请及时绑定邮箱和手机立即绑定

Specflow特征文件代码-数据定义c#

Specflow特征文件代码-数据定义c#

C#
猛跑小猪 2021-06-29 09:00:05
你也可以使用扩展方法像这样public static long GetUserID(this ClaimsPrincipal User){   return long.Parse(User.Claims.First(i => i.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier").Value);}并像这样在您的控制器中实现[HttpDelete("DeleteAddress")]public async Task<IActionResult> DeleteAddress([FromQuery] long AddressID){   try   {      long userID = this.User.GetUserID();      await _addressService.Delete(userID, AddressID);      return Ok();   }   catch (Exception err)   {      return Conflict(err.Message);   }     }我希望它会帮助你
查看完整描述

2 回答

?
蝴蝶刀刀

TA贡献1801条经验 获得超8个赞

通常最好将Givens 和Whens 分开,以便您的功能读起来更好。


在您的情况下,最好的做法是使用 aScenario Outline而不是 a Scenario。这允许您使用标记化表来断言多个不同的结果,前提是相同的初始步骤:


Scenario Outline: Batch execution works correctly

    Given  Interface is generated

    When batch is executed

    Then <measure_type> is generated

Examples: 

    | measure_type       |

    | transfer measure   |

    | allocation measure |

在您的步骤中,您将有单独的方法断言measure type已生成正确的方法:


[Then(@"transfer measure is generated")]

public void ThenTransferMeasureIsGenerated()

{

    // your assertion logic here

}


查看完整回答
反对 回复 2021-07-10
?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

对于你的例子


生成给定接口


批处理执行时


然后生成转移测度


生成给定接口


批处理执行时


然后生成分配度量


您可以使用表格并按如下方式更改它:


Given Interface is generated    

When batch is executed   

Then '<val>' measure is generated    

Examples:    

|val|    

|transfer|    

|allocation|

这将生成单个 Then 步骤



查看完整回答
反对 回复 2021-07-10
  • 2 回答
  • 0 关注
  • 156 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信