第一种方法:使用try-catch块以及Asset.Fail。
我正在使用这种技术在执行开始之前和之后在记录器中打印几条消息
[TestMethod]
public void abcButton()
{
want to print messages so many Logger signs are here
Utility.Logger.Write("** " + string.Format(" {0} - {1}", GetType().Name, MethodName) + " Test Case is started *****");
Utility.Logger.Write("***********************");
try
{
Assert.IsTrue(LoginPage.CheckBtn());
Utility.Logger.Write("********************");
Utility.Logger.Write("***** " + string.Format(" {0} - {1}", GetType().Name, MethodName) + " Test Case is Passed *****");
Utility.Logger.Write("******************************************************");
}
catch
{
Utility.Logger.Write("*************************");
Utility.Logger.Write("***** " + string.Format(" {0} - {1}", GetType().Name, MethodName) + " Test Case is Failed *****");
Utility.Logger.Write("*********************");
Assert.Fail();
}
}
或 第二种方法:使用if-else条件,再涉及一个额外的var 我只是想看看是否可以从专家那里得到一个简短的方法
[TestMethod]
public void abcButton()
{
Utility.Logger.Write("** " + string.Format(" {0} - {1}", GetType().Name, MethodName) + " Test Case is started *****");
Utility.Logger.Write("***********************");
var val = LoginPage.CheckBtn() ;
if(val)){
Assert.IsTrue(val);
Utility.Logger.Write("********************");
Utility.Logger.Write("***** " + string.Format(" {0} - {1}", GetType().Name, MethodName) + " Test Case is Passed *****");
Utility.Logger.Write("**************************************");
}
else
{
Utility.Logger.Write("*************************");
Utility.Logger.Write("***** " + string.Format(" {0} - {1}", GetType().Name, MethodName) + " Test Case is Failed *****");
Utility.Logger.Write("*********************");
}
}
如果我们能用更少的代码处理这种情况,请告诉我