assert ×6
Создан 05.01.2025
23
голоса
4
ответов
61
просмотров
Как проверить, что в JUnit-тестах выбрасывается определенное исключение?

Как я могу использовать JUnit для идиоматического тестирования того, что определённый код выбрасывает исключение?

Я, конечно, могу сделать что-то вроде этого:

@Test
public void testFooThrowsIndexOutOfBoundsException() {
    boolean thrown = false;

    try {
        foo.doStuff();
    }...
7
голоса
5
ответов
42
просмотров
Как автоматически генерировать трассировку стека при сбое программы

Я разрабатываю программу на C++ под Linux с использованием компилятора GCC. В случае сбоя моей программы мне хотелось бы, чтобы она автоматически генерировала стек вызовов.

Моя программа запускается различными пользователями и работает на Linux, Windows и Macintosh (все версии компилируются с...

6
голоса
5
ответов
26
просмотров
Лучшие практики использования assert?

Проблема:

  1. Существует ли проблема производительности или поддерживаемости кода при использовании assert в стандартном коде, а не только для отладки?
    Является ли следующий код:
assert x >= 0, 'x is less than zero'

лучше или хуже, чем:

if x < 0:
    raise...
0
голоса
4
ответов
19
просмотров
Неоднозначный вызов метода: обе методы assertEquals(Object, Object) и assertEquals(double, double) в Assert совпадают

Я получаю следующую ошибку:

Обе версии метода assertEquals(Object, Object) в классе Assert и assertEquals(double, double) в классе Assert совпадают

Эта ошибка возникает на строке кода в моих тестах Junit, где метод getScore() возвращает значение типа...

0
голоса
2
ответов
31
просмотров
Актуально ли использовать Assert как хорошую практику?

Вопрос: Использование Assert для проверки параметров функции — хорошая практика?

Я изучал исходный код Spring Framework и обратил внимание, что они часто используют Assert.notNull. Вот пример:

public static ParsedSql parseSqlStatement(String sql) {
    Assert.notNull(sql, "SQL не...
0
голоса
5
ответов
16
просмотров
Какова польза от базового режима оптимизации Python? (python -O)

Проблема: Опция оптимизации в Python -O и ее реальная ценность

В Python существует флаг -O, который позволяет запустить интерпретатор с оптимизациями. Эта опция генерирует "оптимизированный" байт-код (сохраняемый в файлах .pyo), а при запуске дважды она удаляет все строковые документирования...