亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在特征文件中使用變量

如何在特征文件中使用變量

C#
ibeautiful 2023-12-17 10:44:50
如何在功能文件中使用變量?具體來說,我需要使用dateTime.now。理想情況下,類似...Given the API returns items for "dateTime.now"when my function is run then I want that data in my database在我的驗收測試文件中......[Given("The API returns line items for (.*)")]這是解決此問題的正確方法嗎?我不確定如何在我的功能文件中使用變量。我希望我的驗收測試使用當前日期。
查看完整描述

2 回答

?
吃雞游戲

TA貢獻1829條經驗 獲得超7個贊

最簡單的方法是編寫一個特定于“立即”返回行項目的步驟:


Given the API returns items for right now

您可以從新版本調用該步驟的其他版本:


[Given(@"the API returns items for right now")]

public void GivenTheAPIReturnsItemsForRightNow()

{

    GivenTheAPIReturnsItemsFor(DateTime.Now);

}

這避免了步驟之間的代碼重復。


查看完整回答
反對 回復 2023-12-17
?
楊魅力

TA貢獻1811條經驗 獲得超6個贊

由于功能文件是您可以與業務利益相關者(或組織中的其他非 IT 人員)共享的內容,因此使用“現實世界”功能文件會更有意義。功能文件中的語言。 此外,當您在測試結束時將其傳遞給報告工具時,它會更具可讀性。


我會這樣處理。 switch 語句可以輕松地使用現實世界語言添加其他類型的日期:


[Given("The API returns line items for '(.*)'")]

public void GivenTheAPIReturnsItemsForTime(string mydate)

{

? ? ?switch (mydate)

? ? ?{

? ? ? ? ? case:"the current date":

? ? ? ? ? ? ? HandleApiDateTime(DateTime.Now.ToString("dd-MM-yyyy"))

? ? ? ? ? ? ? // pass the current date to the Api handler

? ? ? ? ? ? ? break;

? ? ? ? ? case:"yesterday":

? ? ? ? ? ? ? HandleApiDateTime(DateTime.Now.AddDays(-1).ToString("dd-MM-yyyy"))

? ? ? ? ? ? ? // pass yesterdays date to the Api handler

? ? ? ? ? ? ? break;

? ? ? ? ? default:

? ? ? ? ? ? ? Console.Writeline("I didnt recognize this command");

? ? ? ? ? ? ? // or other error handling

? ? ? ? ? ? ? break;

? ? ?}

}


private void HandleApiDateTime(DateTime mydate)

{

? ? // do your api magic with a date object

}

你的功能文件可能看起來像


Given the API returns items for 'yesterday'

when my function is run?

then I want that data in my database


查看完整回答
反對 回復 2023-12-17
  • 2 回答
  • 0 關注
  • 194 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號