我们正在与MSTest和Selenium一起运行网络测试。现在,我们正在尝试使日志更易于理解,为此,我们想记录测试已执行的每个方法的名称。
我们正在使用VS2015 Update 3和MSTest 1.4
[TestClass]
public class Test1: TestBase
{
[TestMethod]
public void TEST_Method1()
{
driver.Url = targetURL
loginPage.Login(USER, PASSWORD);
homePage.GoToGraphics();
homePage.GoToUserSearch();
searchBI.Click_Calendar();
searchBI.Select_November();
...
}
}
我们希望打印日志
Starting TEST_Method1()
Executing loginPage.Login()
Executing homePage.GoToGraphics()
Executing homePage.GoToUserSearch()
Executing searchBI.Click_Calendar()
Executing searchBI.Select_November()
...
答案 0 :(得分:1)
下面的代码片段捕获当前的方法名称并将其存储在methodName变量中:
var currentMethod = MethodBase.GetCurrentMethod();
currentMethod 变量包含多个属性,包括当前方法的名称。
您可以将其封装在另一个类中,以使其仅对测试执行公开,或者使用常规的Logging库将其记录到控制台或输出窗口中。