Можно ли записать имя каждого выполняемого метода? - PullRequest
0 голосов
/ 07 ноября 2019

мы работаем с MSTest и Selenium для запуска веб-тестов. Прямо сейчас мы пытаемся сделать журнал более понятным, и для этого мы хотели бы регистрировать каждое имя метода, которое выполнил тест.

Мы используем обновление 3 VS2015 и 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()
...

1 Ответ

1 голос
/ 07 ноября 2019

Приведенный ниже фрагмент кода захватывает имя текущего метода и сохраняет его в переменной methodName:

var currentMethod = MethodBase.GetCurrentMethod();

Переменная currentMethod содержит несколько свойств, включая имя текущего метода.

Вы можете инкапсулировать это в другом классе, чтобы предоставить его только для выполнения теста, или использовать обычную библиотеку журналирования, чтобы зарегистрировать ее на консоли или в окне вывода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...