SetUp and tearDown methods are called on every test. Is it possible to know the current (running) test name in the setUp and tearDown methods? I need to do some extra work depending on what is the currently running test.
问问题
287 次
2 回答
1
您可以使用子类中的selector
方法SenTestCase
来获取将要执行(in setUp
)/已执行(tearDown
)的测试方法的 SEL。然后您可以使用NSStringFromSelector
将 SEL 转换为字符串。
这里有一个例子:
NSString *testToExecute = NSStringFromSelector([self selector]);
但是,我会重新考虑您编写测试的方式。我不喜欢根据要运行的测试在 setUp 中执行条件代码的想法......为了解决这个问题,您最好将该条件代码提取到一个方法中,并从您想要的所有测试方法中调用该方法。或者你甚至可以为这些测试用例创建一个单独的测试类,在它的 setUp/tearDown 中为它的所有测试方法做额外的工作。
于 2013-09-10T08:30:33.043 回答
0
在 Swift 中:self.name
或者testRun.test.name
会给你这个:-[AppUITests testLoginFlow]
于 2018-09-05T10:06:36.503 回答