В каждом тесте вызывается метод SetUp и tearDown. Возможно ли узнать текущее тестовое имя в методах setUp и tearDown? Мне нужно сделать дополнительную работу в зависимости от того, что является текущим тестированием.Имя теста в методах setUp/tearDown
0
A
ответ
1
Вы можете использовать метод selector
в вашем SenTestCase
подкласса, чтобы получить SEL методы испытаний, который будет выполняться (в setUp
)/казнили (tearDown
). Затем вы можете использовать NSStringFromSelector
для преобразования SEL в строку.
Вот пример:
NSString *testToExecute = NSStringFromSelector([self selector]);
Однако я бы переосмыслить то, как вы пишете тест. Мне не нравится идея выполнения условного кода в setUp в зависимости от того, какой тест будет запущен ... Чтобы решить эту проблему, вы лучше извлекаете этот условный код для метода и вызываете этот метод из всех методов тестирования, которые вы хотите. Или вы даже можете создать отдельный тестовый класс для этих тестовых примеров, выполняя эту дополнительную работу в своем setUp/tearDown для всех своих методов тестирования.