Один способ, самый простой, по моему мнению, получить текущую дату в вашем тесте - это [StepArgumentTransformation]
, и тогда вы можете извлечь из нее дату или другие вещи.Таким образом, вы можете использовать [StepArgumentTransformation]
в других шагах вашего корнишона, как показано ниже, что приведет к уменьшению кода
Given the API returns items for currentTime
Given the database1 returns items for rightNowTime
Given the database2 returns items for presentTime
Выше приведен только ex, но, в основном, сопоставьте его с любой строковой переменной, которая вам нравится
public class binding {
public DateTime datetime;
[Given(@"the API returns items for (.*)")]
[Given(@"Given the database1 returns items for (.*)")]
[Given(@"Given the database2 returns items for (.*)")]
public void currentDatetime(DateTime dt)
{
log.Info("current time: " + datetime);
log.Info("current date: " + datetime.Date);
}
[StepArgumentTransformation]
public DateTime convertToDatetime(string c)
{
datetime = DateTime.Now;
return datetime;
}
}
Приведенный выше код регистрирует текущее время и текущую дату три раза