ошибка XCTestCase с assert без продолжения выполнения теста, но без остановки других тестов

Это потому, что раздел 3.8 Спецификации языка Java говорит так.

Идентификатор - это последовательность неограниченной длины букв Java и цифр Java, первая из который должен быть буквой Java. Идентификатор не может иметь одно и то же правописание (последовательность символов Юникода) в качестве ключевого слова (§3.9), логический литерал (§3.10.3) или нулевой литерал (§3.10.7).

blockquote>

Что касается , почему было принято это решение : возможно, потому, что это упрощает синтаксический анализ, избегает двусмысленной грамматики, позволяет вводить специальный синтаксис в более поздней версии языка и / или по историческим причинам (т. Е. Потому что большинство других языков имеют те же ограничения, что и различные ограничения). Обратите внимание, что пример ваших примеров с -d особенно ясен:

int -d = 7;
System.out.println("Some number: " + (8 + -d));

Является ли минус первой частью идентификатора или унарным минусом?

Кроме того, если вы как -d и d в качестве переменных, это было бы совершенно двусмысленно:

int -d = 7;
int d = 2;
System.out.println("Some number: " + (8 + -d));

Является результатом 15 или 6?

17
задан Yoav Schwartz 8 January 2014 в 14:45
поделиться

2 ответа

Я могу использовать continueAfterFailure и запустить другие тесты, используя этот шаблон:

self.continueAfterFailure = NO;
@try
{
    // Perform test code here
}
@finally
{
    self.continueAfterFailure = YES;
}
4
ответ дан Pascal Bourque 8 January 2014 в 14:45
поделиться

Самый простой способ - добавить:

continueAfterFailure = false

в метод setUp (). Так это будет выглядеть так:

Swift

override func setUp() {
    super.setUp()

    continueAfterFailure = false
}

Objective-C

 - (void)setUp {
    [super setUp];

    [self setContinueAfterFailure:NO];
}
7
ответ дан nCod3d 8 January 2014 в 14:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: