tf.test.TestCase
| Просмотреть исходный код на GitHub |
Базовый класс для тестов, которые требуют проверки TensorFlow.
tf.test.TestCase(
methodName='runTest'
)
Подклассы
Методы
addCleanup
addCleanup(
*args, **kwargs
)
Добавить функцию с аргументами, которая должна быть вызвана при завершении теста. Добавляемые функции вызываются в порядке LIFO и вызываются после tearDown при сбое или успешном завершении теста.
Элементы очистки вызываются даже если setUp завершился сбоем (в отличие от tearDown).
addTypeEqualityFunc
addTypeEqualityFunc(
typeobj, function
)
Добавить функцию сравнения assertEqual для определённого типа.
Этот метод предназначен для использования подклассами TestCase, которым необходимо зарегистрировать собственные функции сравнения типов для предоставления более информативных сообщений об ошибках.
| Аргументы | |
|---|---|
typeobj | Тип данных для вызова этой функции, когда оба значения имеют одинаковый тип в assertEqual(). |
function | Вызываемый объект, принимающий два аргумента и необязательный аргумент msg=, который вызывает self.failureException с полезным сообщением об ошибке, если два аргумента не равны. |
assertAllClose
assertAllClose(
a, b, rtol=1e-06, atol=1e-06, msg=None
)
Проверяет, что две структуры массивов NumPy или тензоров имеют близкие значения.
a и b могут быть произвольно вложенными структурами. Уровень вложенной структуры может быть dict, namedtuple, tuple или list.
Примечание: реализация следуетnumpy.allclose(и numpy.testing.assert_allclose). Она проверяет, являются ли два массива элемент-по-элементу равными в пределах определённой точности. Отклонение (rtol * abs(b)) и абсолютное отклонениеatolскладываются, чтобы сравнить их с абсолютным отклонением междуaиb.
| Аргументы | |
|---|---|
a | Ожидаемый массив NumPy ndarray, или что-либо, что может быть преобразовано в массив NumPy ndarray (включая Tensor), или любая произвольно вложенная структура этих элементов. |
b | Фактический массив NumPy ndarray, или что-либо, что может быть преобразовано в массив NumPy ndarray (включая Tensor), или любая произвольно вложенная структура этих элементов. |
rtol | Относительная точность. |
atol | Абсолютная точность. |
msg | Необязательное сообщение для отчёта о сбое. |
| Исключения | |
|---|---|
ValueError | если только один из a[p] и b[p] является словарем или a[p] и b[p] имеют разную длину, где [p] обозначает путь к вложенной структуре, например, заданные a = [(1, 1), {'d': (6, 7)}] и [p] = [1]['d'], тогда a[p] = (6, 7). |
assertAllCloseAccordingToType
assertAllCloseAccordingToType(
a,
b,
rtol=1e-06,
atol=1e-06,
float_rtol=1e-06,
float_atol=1e-06,
half_rtol=0.001,
half_atol=0.001,
bfloat16_rtol=0.01,
bfloat16_atol=0.01,
msg=None
)
Как assertAllClose, но также подходит для сравнения массивов fp16.
В частности, точность уменьшается до 1e-3, если хотя бы один из аргументов имеет тип float16.
| Аргументы | |
|---|---|
a | ожидаемый массив NumPy ndarray или что-либо, что может быть преобразовано в него. |
b | фактический массив NumPy ndarray или что-либо, что может быть преобразовано в него. |
rtol | относительная точность. |
atol | абсолютная точность. |
float_rtol | относительная точность для float32. |
float_atol | абсолютная точность для float32. |
half_rtol | относительная точность для float16. |
half_atol | абсолютная точность для float16. |
bfloat16_rtol | относительная точность для bfloat16. |
bfloat16_atol | абсолютная точность для bfloat16. |
msg | Необязательное сообщение для отчёта о сбое. |
assertAllEqual
assertAllEqual(
a, b, msg=None
)
Проверяет, что два массива NumPy или тензоры имеют одинаковые значения.
| Аргументы | |
|---|---|
a | ожидаемый массив NumPy ndarray или что-либо, что может быть преобразовано в него. |
b | фактический массив NumPy ndarray или что-либо, что может быть преобразовано в него. |
msg | Необязательное сообщение для отчёта о сбое. |
assertAllGreater
assertAllGreater(
a, comparison_target
)
Проверяет, что все элементные значения больше целевого значения.
| Аргументы | |
|---|---|
a | Массив NumPy ndarray, или что-либо, что может быть преобразовано в массив NumPy ndarray (включая Tensor). |
comparison_target | Целевое значение сравнения. |
assertAllGreaterEqual
assertAllGreaterEqual(
a, comparison_target
)
Проверяет, что все элементные значения больше или равны целевому значению.
| Аргументы | |
|---|---|
a | Массив NumPy ndarray, или что-либо, что может быть преобразовано в массив NumPy ndarray (включая Tensor). |
comparison_target | Целевое значение сравнения. |
assertAllInRange
assertAllInRange(
target,
lower_bound,
upper_bound,
open_lower_bound=False,
open_upper_bound=False
)
Проверяет, что все элементы в тензоре находятся в заданном диапазоне.
| Аргументы | |
|---|---|
target | Массив NumPy ndarray, или что-либо, что может быть преобразовано в массив NumPy ndarray (включая Tensor). |
lower_bound | Нижняя граница диапазона. |
upper_bound | Верхняя граница диапазона. |
open_lower_bound | (bool) Является ли нижняя граница открытой (т.е., > вместо значения по умолчанию >=) |
open_upper_bound | (bool) Является ли верхняя граница открытой (т.е., < вместо значения по умолчанию <=) |
| Исключения | |
|---|---|
AssertionError | если тензор значения не имеет числового типа с порядком (float* или int*), или если есть значения nan, или если какой-либо из элементов не попадает в заданный диапазон. |
assertAllInSet
assertAllInSet(
target, expected_set
)
Проверяет, что все элементы тензора находятся в заданном замкнутом множестве.
| Аргументы | |
|---|---|
target | Массив NumPy ndarray, или что-либо, что может быть преобразовано в массив NumPy ndarray (включая Tensor). |
expected_set | (list, tuple или set) Замкнутое множество, в которое, как ожидается, попадают элементы значения target. |
| Исключения | |
|---|---|
AssertionError | если какой-либо из элементов не попадает в expected_set. |
assertAllLess
assertAllLess(
a, comparison_target
)
Проверяет, что все элементные значения меньше целевого значения.
| Аргументы | |
|---|---|
a | Массив NumPy ndarray, или что-либо, что может быть преобразовано в массив NumPy ndarray (включая Tensor). |
comparison_target | Целевое значение сравнения. |
assertAllLessEqual
assertAllLessEqual(
a, comparison_target
)
Проверить, что все значения элементов меньше или равны целевому значению.
| Аргументы | |
|---|---|
a | Массив NumPy ndarray, или любой объект, который можно преобразовать в массив NumPy ndarray (включая Tensor). |
comparison_target | Целевое значение сравнения. |
data-text="assertAlmostEqual" id="assertAlmostEqual">assertAlmostEqual
assertAlmostEqual(
first, second, places=None, msg=None, delta=None
)
Не проходит, если два объекта не равны, как определяется их разницей, округлённой до заданного числа десятичных знаков (по умолчанию 7) и сравнением с нулём, или если разница между двумя объектами больше заданного дельты.
Обратите внимание, что десятичные знаки (от нуля) обычно не совпадают с значащими цифрами (измеренными с самой значимой цифры).
Если два объекта сравниваются как равные, они автоматически сравниваются как почти равные.
data-text="assertAlmostEquals" id="assertAlmostEquals">assertAlmostEquals
assertAlmostEquals(
*args, **kwargs
)
data-text="assertArrayNear" id="assertArrayNear">assertArrayNear
assertArrayNear(
farray1, farray2, err, msg=None
)
Проверяет, что два массива с плавающей точкой близки друг к другу.
Проверяет, что для всех элементов farray1 и farray2 |f1 - f2| < err. Проверяет ошибку теста, если это не так.
| Аргументы | |
|---|---|
farray1 | список чисел с плавающей точкой. |
farray2 | список чисел с плавающей точкой. |
err | число с плавающей точкой. |
msg | Необязательное сообщение для отчёта об ошибке. |
data-text="assertBetween" id="assertBetween">assertBetween
assertBetween(
value, minv, maxv, msg=None
)
Проверяет, что значение находится между minv и maxv (включительно).
data-text="assertCommandFails" id="assertCommandFails">assertCommandFails
assertCommandFails(
command, regexes, env=None, close_fds=True, msg=None
)
Проверяет, что команда оболочки завершается с ошибкой, и ошибка соответствует регулярному выражению в списке.
| Аргументы | |
|---|---|
command | Список или строка, представляющая команду для выполнения. |
regexes | список строк регулярных выражений. |
env | Словарь настроек переменных среды. Если None, переменные среды не будут заданы для дочернего процесса. Это сделано для повышения герметичности тестов. ПРИМЕЧАНИЕ: это поведение отличается от стандартного модуля subprocess. |
close_fds | Нужно ли закрывать все открытые дескрипторы файлов в дочернем процессе после форкинга. |
msg | Необязательное сообщение для отчёта об ошибке. |
data-text="assertCommandSucceeds" id="assertCommandSucceeds">assertCommandSucceeds
assertCommandSucceeds(
command, regexes=(b'',), env=None, close_fds=True, msg=None
)
Проверяет, что команда оболочки выполняется успешно (т. е. завершается с кодом 0).
| Аргументы | |
|---|---|
command | Список или строка, представляющая команду для выполнения. |
regexes | Список байтовых строк регулярных выражений, соответствующих успеху. |
env | Словарь настроек переменных среды. Если None, переменные среды не будут заданы для дочернего процесса. Это сделано для повышения герметичности тестов. ПРИМЕЧАНИЕ: это поведение отличается от стандартного модуля subprocess. |
close_fds | Нужно ли закрывать все открытые дескрипторы файлов в дочернем процессе после форкинга. |
msg | Необязательное сообщение для отчёта об ошибке. |
data-text="assertContainsExactSubsequence" id="assertContainsExactSubsequence">assertContainsExactSubsequence
assertContainsExactSubsequence(
container, subsequence, msg=None
)
Проверяет, что "container" содержит "subsequence" как точную подпоследовательность.
Проверяет, что "container" содержит все элементы "subsequence" в порядке и без других элементов между ними. Например, [1, 2, 3] является точной подпоследовательностью [0, 0, 1, 2, 3, 0], но не [0, 0, 1, 2, 0, 3, 0].
| Аргументы | |
|---|---|
container | список, который мы проверяем на включение подпоследовательности. |
subsequence | список, который, мы надеемся, будет точной подпоследовательностью container. |
msg | Необязательное сообщение для отчёта об ошибке. |
data-text="assertContainsInOrder" id="assertContainsInOrder">assertContainsInOrder
assertContainsInOrder(
strings, target, msg=None
)
Проверяет, что указанные строки находятся в целевой строке в порядке.
Это может быть полезно для проверки HTML-вывода.
| Аргументы | |
|---|---|
strings | Список строк, например [ 'fox', 'dog' ] |
target | Целевая строка, в которой нужно искать строки, например 'The quick brown fox jumped over the lazy dog'. |
msg | Необязательное сообщение для отчёта об ошибке. |
data-text="assertContainsSubsequence" id="assertContainsSubsequence">assertContainsSubsequence
assertContainsSubsequence(
container, subsequence, msg=None
)
Проверяет, что "container" содержит "subsequence" в качестве подпоследовательности.
Проверяет, что "container" содержит все элементы "subsequence" в порядке, но, возможно, с другими элементами между ними. Например, [1, 2, 3] является подпоследовательностью [0, 0, 1, 2, 0, 3, 0], но не [0, 0, 1, 3, 0, 2, 0].
| Аргументы | |
|---|---|
container | список, который мы проверяем на включение подпоследовательности. |
subsequence | список, который, мы надеемся, будет подпоследовательностью container. |
msg | Необязательное сообщение для отчёта об ошибке. |
data-text="assertContainsSubset" id="assertContainsSubset">assertContainsSubset
assertContainsSubset(
expected_subset, actual_set, msg=None
)
Проверяет, является ли actual iterable надмножеством expected iterable.
data-text="assertCountEqual" id="assertCountEqual">assertCountEqual
assertCountEqual(
first, second, msg=None
)
Сравнение неупорядоченных последовательностей, утверждающее, что одинаковые элементы, независимо от порядка. Если один и тот же элемент встречается более одного раза, проверяется, что элементы встречаются одинаковое количество раз.
self.assertEqual(Counter(list(first)),
Counter(list(second)))
Пример:
- [0, 1, 1] and [1, 0, 1] compare equal. - [0, 0, 1] and [0, 1] compare unequal.
data-text="assertDTypeEqual" id="assertDTypeEqual">assertDTypeEqual
assertDTypeEqual(
target, expected_dtype
)
Проверить, что тип данных ndarray равен ожидаемому.
| Аргументы | |
|---|---|
target | Массив NumPy ndarray, или любой объект, который можно преобразовать в массив NumPy ndarray (включая Tensor). |
expected_dtype | Ожидаемый тип данных. |
data-text="assertDeviceEqual" id="assertDeviceEqual">assertDeviceEqual
assertDeviceEqual(
device1, device2, msg=None
)
Проверяет, что два заданных устройства одинаковы.
| Аргументы | |
|---|---|
device1 | Имя устройства в виде строки или объект TensorFlow DeviceSpec . |
device2 | Имя устройства в виде строки или объект TensorFlow DeviceSpec . |
msg | Необязательное сообщение для отчёта об ошибке. |
data-text="assertDictContainsSubset" id="assertDictContainsSubset">assertDictContainsSubset
assertDictContainsSubset(
subset, dictionary, msg=None
)
Проверяет, является ли словарь надмножеством подмножества.
data-text="assertDictEqual" id="assertDictEqual">assertDictEqual
assertDictEqual(
a, b, msg=None
)
Проверить, что два заданных словаря тензоров одинаковы.
| Аргументы | |
|---|---|
a | Ожидаемый словарь с массивами NumPy ndarray или другими значениями, которые можно преобразовать в них. |
b | Фактический словарь с массивами NumPy ndarray или другими значениями, которые можно преобразовать в них. |
msg | Необязательное сообщение для отчёта об ошибке. |
data-text="assertEmpty" id="assertEmpty">assertEmpty
assertEmpty(
container, msg=None
)
Проверяет, что объект имеет нулевую длину.
| Аргументы | |
|---|---|
container | Любой объект, реализующий интерфейс collections.abc.Sized. |
msg | Необязательное сообщение для отчёта об ошибке. |
data-text="assertEndsWith" id="assertEndsWith">assertEndsWith
assertEndsWith(
actual, expected_end, msg=None
)
Проверяет, что actual.endswith(expected_end) равно True.
| Аргументы | |
|---|---|
actual | str |
expected_end | str |
msg | Необязательное сообщение для отчёта об ошибке. |
data-text="assertEqual" id="assertEqual">assertEqual
assertEqual(
first, second, msg=None
)
Не проходит, если два объекта не равны, как определяется оператором '=='.
data-text="assertEquals" id="assertEquals">assertEquals
assertEquals(
*args, **kwargs
)
data-text="assertFalse" id="assertFalse">assertFalse
assertFalse(
expr, msg=None
)
Проверить, что выражение ложно.
data-text="assertGreater" id="assertGreater">assertGreater
assertGreater(
a, b, msg=None
)
Аналогично self.assertTrue(a > b), но с более удобным сообщением по умолчанию.
data-text="assertGreaterEqual" id="assertGreaterEqual">assertGreaterEqual
assertGreaterEqual(
a, b, msg=None
)
Аналогично self.assertTrue(a >= b), но с более удобным сообщением по умолчанию.
data-text="assertIn" id="assertIn">assertIn
assertIn(
member, container, msg=None
)
Аналогично self.assertTrue(a in b), но с более удобным сообщением по умолчанию.
data-text="assertIs" id="assertIs">assertIs
assertIs(
expr1, expr2, msg=None
)
Аналогично self.assertTrue(a is b), но с более удобным сообщением по умолчанию.
data-text="assertIsInstance" id="assertIsInstance">assertIsInstance
assertIsInstance(
obj, cls, msg=None
)
То же самое, что и self.assertTrue(isinstance(obj, cls)), но с более приятным сообщением по умолчанию.
assertIsNone
assertIsNone(
obj, msg=None
)
То же самое, что и self.assertTrue(obj is None), но с более приятным сообщением по умолчанию.
assertIsNot
assertIsNot(
expr1, expr2, msg=None
)
Так же, как self.assertTrue(a is not b), но с более приятным сообщением по умолчанию.
assertIsNotNone
assertIsNotNone(
obj, msg=None
)
Включено для симметрии с assertIsNone.
assertItemsEqual
assertItemsEqual(
first, second, msg=None
)
Сравнение неупорядоченных последовательностей, утверждающее, что элементы одинаковые, независимо от порядка. Если один и тот же элемент встречается более одного раза, проверяется, что элементы встречаются одинаковое количество раз.
self.assertEqual(Counter(list(first)),
Counter(list(second)))
Пример:
- [0, 1, 1] and [1, 0, 1] compare equal. - [0, 0, 1] and [0, 1] compare unequal.
assertJsonEqual
assertJsonEqual(
first, second, msg=None
)
Утверждает, что JSON-объекты, определённые в двух строках, равны.
Резюме различий будет включено в сообщение об ошибке с использованием assertSameStructure.
| Аргументы | |
|---|---|
first | Строка, содержащая JSON для декодирования и сравнения со второй строкой. |
second | Строка, содержащая JSON для декодирования и сравнения с первой строкой. |
msg | Дополнительный текст для включения в сообщение об ошибке. |
assertLen
assertLen(
container, expected_len, msg=None
)
Утверждает, что объект имеет ожидаемую длину.
| Аргументы | |
|---|---|
container | Любой объект, реализующий интерфейс collections.abc.Sized. |
expected_len | Ожидаемая длина контейнера. |
msg | Необязательное сообщение для отчёта об ошибке. |
assertLess
assertLess(
a, b, msg=None
)
То же самое, что и self.assertTrue(a < b), но с более приятным сообщением по умолчанию.
assertLessEqual
assertLessEqual(
a, b, msg=None
)
То же самое, что и self.assertTrue(a <= b), но с более приятным сообщением по умолчанию.
assertListEqual
assertListEqual(
list1, list2, msg=None
)
Утверждение равенства, специфичное для списков.
| Аргументы | |
|---|---|
list1 | Первый список для сравнения. |
list2 | Второй список для сравнения. |
msg | Необязательное сообщение для использования при ошибке вместо списка различий. |
assertLogs
assertLogs(
logger=None, level=None
)
Не выполняется, если не выводится сообщение протоколирования уровня level или выше для logger_name или его дочерних элементов. Если опущено, level по умолчанию равен INFO, а logger по умолчанию — корневой логгер.
Этот метод должен использоваться как менеджер контекста и вернёт объект записи с двумя атрибутами: output и records. В конце менеджера контекста атрибут output будет списком соответствующих отформатированных сообщений протоколирования, а атрибут records — списком соответствующих объектов LogRecord.
Пример::
with self.assertLogs('foo', level='INFO') as cm:
logging.getLogger('foo').info('first message')
logging.getLogger('foo.bar').error('second message')
self.assertEqual(cm.output, ['INFO:foo:first message',
'ERROR:foo.bar:second message'])
assertMultiLineEqual
assertMultiLineEqual(
first, second, msg=None, **kwargs
)
Утверждает, что две многострочные строки равны.
assertNDArrayNear
assertNDArrayNear(
ndarray1, ndarray2, err, msg=None
)
Утверждает, что два массива NumPy имеют близкие значения.
| Аргументы | |
|---|---|
ndarray1 | Массив NumPy. |
ndarray2 | Массив NumPy. |
err | Вещественное число. Максимальное абсолютное различие, разрешённое. |
msg | Необязательное сообщение для отчёта об ошибке. |
assertNear
assertNear(
f1, f2, err, msg=None
)
Утверждает, что два вещественных числа близки друг к другу.
Проверяет, что |f1 - f2| < err, и утверждает ошибку теста, если это не так.
| Аргументы | |
|---|---|
f1 | Значение вещественного числа. |
f2 | Значение вещественного числа. |
err | Значение вещественного числа. |
msg | Необязательная строка сообщения, которая добавляется к сообщению об ошибке. |
assertNoCommonElements
assertNoCommonElements(
expected_seq, actual_seq, msg=None
)
Проверяет, являются ли итерируемые actual и expected disjoint.
assertNotAllClose
assertNotAllClose(
a, b, rtol=1e-06, atol=1e-06, msg=None
)
Утверждает, что два массива NumPy или тензоры не имеют близких значений.
| Аргументы | |
|---|---|
a | Ожидаемый массив NumPy, или любой объект, который может быть преобразован в массив NumPy (включая Tensor), или любая произвольно вложенная структура из этих объектов. |
b | Фактический массив NumPy, или любой объект, который может быть преобразован в массив NumPy (включая Tensor), или любая произвольно вложенная структура из этих объектов. |
rtol | относительная погрешность. |
atol | абсолютная погрешность. |
msg | Необязательное сообщение для отчёта об ошибке. |
| Исключения | |
|---|---|
AssertionError | Если a и b неожиданно близки на всех элементах. |
assertNotAllEqual
assertNotAllEqual(
a, b, msg=None
)
Утверждает, что два массива NumPy или тензоры не имеют одинаковых значений.
| Аргументы | |
|---|---|
a | Ожидаемый массив NumPy или любой объект, который может быть преобразован в него. |
b | Фактический массив NumPy или любой объект, который может быть преобразован в него. |
msg | Необязательное сообщение для отчёта об ошибке. |
assertNotAlmostEqual
assertNotAlmostEqual(
first, second, places=None, msg=None, delta=None
)
Не выполняется, если два объекта равны, как определено их разницей, округлённой до заданного числа десятичных знаков (по умолчанию 7) и сравнением с нулём, или сравнением разницы между двумя объектами с заданным дельтой.
Обратите внимание, что десятичные знаки (от нуля) обычно не совпадают с значащими цифрами (измеренными от наиболее значащей цифры).
Объекты, которые равны, автоматически отклоняются.
assertNotAlmostEquals
assertNotAlmostEquals(
*args, **kwargs
)
assertNotEmpty
assertNotEmpty(
container, msg=None
)
Утверждает, что объект имеет ненулевую длину.
| Аргументы | |
|---|---|
container | Любой объект, реализующий интерфейс collections.abc.Sized. |
msg | Необязательное сообщение для отчёта об ошибке. |
assertNotEndsWith
assertNotEndsWith(
actual, unexpected_end, msg=None
)
Утверждает, что actual.endswith(unexpected_end) ложно.
| Аргументы | |
|---|---|
actual | str |
unexpected_end | str |
msg | Необязательное сообщение для отчёта об ошибке. |
assertNotEqual
assertNotEqual(
first, second, msg=None
)
Прерывание, если два объекта равны, как определено оператором '!='.
assertNotEquals
assertNotEquals(
*args, **kwargs
)
assertNotIn
assertNotIn(
member, container, msg=None
)
То же самое, что и self.assertTrue(a not in b), но с более приятным сообщением по умолчанию.
assertNotIsInstance
assertNotIsInstance(
obj, cls, msg=None
)
Включено для симметрии с assertIsInstance.
assertNotRegex
assertNotRegex(
text, unexpected_regex, msg=None
)
Прервать тест, если текст соответствует регулярному выражению.
assertNotRegexpMatches
assertNotRegexpMatches(
*args, **kwargs
)
assertNotStartsWith
assertNotStartsWith(
actual, unexpected_start, msg=None
)
Утверждает, что actual.startswith(unexpected_start) ложно.
| Аргументы | |
|---|---|
actual | str |
unexpected_start | str |
msg | Необязательное сообщение для отчёта об ошибке. |
assertProtoEquals
assertProtoEquals(
expected_message_maybe_ascii, message, msg=None
)
Утверждает, что сообщение такое же, как проанализированное expected_message_ascii.
Создаёт другую копию прототипа message, считывает ascii сообщение в неё и затем сравнивает их с помощью self._AssertProtoEqual().
| Аргументы | |
|---|---|
expected_message_maybe_ascii | прото-сообщение в исходном или ASCII формате. |
message | сообщение для проверки. |
msg | необязательное сообщение для отчёта о сбое. |
assertProtoEqualsVersion
assertProtoEqualsVersion(
expected,
actual,
producer=versions.GRAPH_DEF_VERSION,
min_consumer=versions.GRAPH_DEF_VERSION_MIN_CONSUMER,
msg=None
)
assertRaises
assertRaises(
expected_exception, *args, **kwargs
)
Проверяет, что вызов передаваемой функции с указанными позиционными и именованными аргументами не вызывает исключение указанного класса. Если вызывается другой тип исключения, тест будет считаться ошибочным так же, как и при возникновении неожидаемого исключения.
Если вызов выполнен без передаваемых аргументов, возвращает объект контекста, используемый следующим образом::
with self.assertRaises(SomeException):
do_something()
Необязательный именованный аргумент «msg» может быть передан, если assertRaises используется как объект контекста.
Объект контекста сохраняет ссылку на исключение в атрибуте «исключение». Это позволяет просмотреть исключение после проверки::
with self.assertRaises(SomeException) as cm:
do_something()
the_exception = cm.exception
self.assertEqual(the_exception.error_code, 3)
assertRaisesIncompatibleShapesError
assertRaisesIncompatibleShapesError(
exception_type=tf.errors.InvalidArgumentError
)
assertRaisesOpError
assertRaisesOpError(
expected_err_re_or_predicate
)
assertRaisesRegex
assertRaisesRegex(
expected_exception, expected_regex, *args, **kwargs
)
Проверяет, что сообщение в поднятом исключении соответствует регулярному выражению.
| Аргументы | |
|---|---|
expected_exception | Ожидаемый класс исключения. |
expected_regex | Регулярное выражение (объект re.Pattern или строка), которое ожидается в сообщении об ошибке. |
args | Вызываемая функция и дополнительные позиционные аргументы. |
kwargs | Дополнительные именованные аргументы. |
msg | Необязательное сообщение, используемое в случае неудачи. Может быть использовано только при assertRaisesRegex в качестве менеджера контекста. |
assertRaisesRegexp
assertRaisesRegexp(
expected_exception, expected_regex, *args, **kwargs
)
Проверяет, что сообщение в поднятом исключении соответствует регулярному выражению.
| Аргументы | |
|---|---|
expected_exception | Ожидаемый класс исключения. |
expected_regex | Регулярное выражение (объект re.Pattern или строка), которое ожидается в сообщении об ошибке. |
args | Вызываемая функция и дополнительные позиционные аргументы. |
kwargs | Дополнительные именованные аргументы. |
msg | Необязательное сообщение, используемое в случае неудачи. Может быть использовано только при assertRaisesRegex в качестве менеджера контекста. |
assertRaisesWithLiteralMatch
assertRaisesWithLiteralMatch(
expected_exception,
expected_exception_message,
callable_obj=None,
*args,
**kwargs
)
Проверяет, что сообщение в поднятом исключении равно заданной строке.
В отличие от assertRaisesRegex, этот метод принимает не регулярное выражение, а строку.
с self.assertRaisesWithLiteralMatch(ExType, 'message'): DoSomething()
| Аргументы | |
|---|---|
expected_exception | Ожидаемый класс исключения. |
expected_exception_message | Ожидаемое сообщение в поднятом исключении. Для исключения e, expected_exception_message должно быть равно str(e). |
callable_obj | Вызываемая функция или None для возврата контекста. |
*args | Дополнительные аргументы. |
**kwargs | Дополнительные именованные аргументы. |
| Возвращает | |
|---|---|
| Объект менеджера контекста, если callable_obj равен None. В противном случае, None. |
| Исключения | |
|---|---|
| self.failureException, если callable_obj не вызывает соответствующее исключение. |
assertRaisesWithPredicateMatch
@contextlib.contextmanager
assertRaisesWithPredicateMatch(
exception_type, expected_err_re_or_predicate
)
Возвращает менеджер контекста для заключения кода, ожидающего поднятия исключения.
Если исключение является OpError, стек операций также включён в поиск соответствия в сообщении.
| Аргументы | |
|---|---|
exception_type | Ожидаемый тип исключения, который должен быть поднят. |
expected_err_re_or_predicate | Если это вызываемая функция, она должна принимать исключение в качестве аргумента и возвращать True (успех) или False (необходимо отклонить тест). В противном случае ожидается, что сообщение об ошибке будет частично соответствовать этому регулярному выражению. |
| Возвращает | |
|---|---|
| Менеджер контекста для окружения кода, ожидающего поднятия исключения. |
assertRegex
assertRegex(
text, expected_regex, msg=None
)
Отклонить тест, если текст не соответствует регулярному выражению.
assertRegexMatch
assertRegexMatch(
actual_str, regexes, message=None
)
Проверяет, что хотя бы одно регулярное выражение из regexes соответствует str.
Если это возможно, используйте assertRegex, что является упрощённой версией этого метода. assertRegex принимает одно регулярное выражение (строка или скомпилированный объект re) вместо списка.
Примечания:
Эта функция использует соответствие по подстрокам, т.е. соответствие происходит, если любая подстрока сообщения об ошибке соответствует любому регулярному выражению в списке. Это удобнее для пользователя, чем полное соответствие.
Если regexes пустой список, соответствие всегда будет неудачным.
Используйте regexes=[''] для регулярного выражения, которое всегда будет проходить.
'.' соответствует любому символу кроме новой строки. Для соответствия любому символу, используйте '(.|\n)'.
'^' соответствует началу каждой строки, а не только началу строки. Аналогично, '$' соответствует концу каждой строки.
Если regexes содержит недопустимое регулярное выражение, будет выброшено исключение.
| Аргументы | |
|---|---|
actual_str | Строка, которую мы пытаемся сопоставить с элементами в regexes. |
regexes | Регулярные выражения, которые мы хотим сопоставить со строкой str. Смотрите "Примечания" для подробных пояснений о том, как это интерпретируется. |
message | Сообщение, которое будет выведено, если тест завершится неудачей. |
assertRegexpMatches
assertRegexpMatches(
*args, **kwargs
)
assertSameElements
assertSameElements(
expected_seq, actual_seq, msg=None
)
Проверяет, что две последовательности содержат одинаковые элементы (в любом порядке).
В отличие от assertCountEqual, этот метод не учитывает дубликаты в ожидаемой и фактической последовательностях.
assertSameElements([1, 1, 1, 0, 0, 0], [0, 1]) # Не вызывает AssertionError
Если возможно, следует использовать assertCountEqual вместо assertSameElements.
| Аргументы | |
|---|---|
expected_seq | Последовательность, содержащая ожидаемые элементы. |
actual_seq | Последовательность, которую мы тестируем. |
msg | Сообщение, которое будет выведено, если тест завершится неудачей. |
assertSameStructure
assertSameStructure(
a, b, aname='a', bname='b', msg=None
)
Проверяет, что два значения содержат одинаковое структурное содержимое.
Два аргумента должны быть древовидными данными, состоящими из деревьев словарей и списков. Они будут сравниваться глубоко, проходя по содержимому словарей и списков; другие элементы будут сравниваться с помощью оператора ==. Если структуры различаются по содержимому, сообщение об ошибке укажет место в структурах, где обнаружено первое различие. Это может быть полезно при сравнении больших структур.
Поддерживаются смешанные типы последовательностей и множеств. Поддерживаются смешанные типы отображений, но порядок ключей при сравнении не учитывается.
| Аргументы | |
|---|---|
a | Первая структура для сравнения. |
b | Вторая структура для сравнения. |
aname | Имя переменной для первой структуры в сообщениях об утверждениях. |
bname | Имя переменной для второй структуры. |
msg | Дополнительный текст для включения в сообщение об ошибке. |
assertSequenceAlmostEqual
assertSequenceAlmostEqual(
expected_seq, actual_seq, places=None, msg=None, delta=None
)
Проверка приблизительного равенства для упорядоченных последовательностей.
Отклонит тест, если две последовательности не равны, как определено по разнице их значений, округленных до заданного количества десятичных знаков (по умолчанию 7) и сравненных с нулём, или по сравнению, что разница между каждым значением в двух последовательностях больше заданного дельты.
Обратите внимание, что десятичные знаки (от нуля) обычно не совпадают с значащими цифрами (измеренными от самой значимой цифры).
Если две последовательности сравниваются как равные, они автоматически сравнятся как приблизительно равные.
| Аргументы | |
|---|---|
expected_seq | Последовательность, содержащая ожидаемые элементы. |
actual_seq | Последовательность, которую мы тестируем. |
places | Количество знаков после запятой для сравнения. |
msg | Сообщение, которое будет выведено, если тест завершится неудачей. |
delta | Разница, которая считается допустимой между сравниваемыми значениями. |
assertSequenceEqual
assertSequenceEqual(
seq1, seq2, msg=None, seq_type=None
)
Утверждение о равенстве для упорядоченных последовательностей (например, списков и кортежей).
Для целей этой функции допустимый тип упорядоченной последовательности — это тип, который может быть индексирован, имеет длину и имеет оператор равенства.
| Аргументы | |
|---|---|
seq1 | Первая последовательность для сравнения. |
seq2 | Вторая последовательность для сравнения. |
seq_type | Ожидаемый тип данных последовательностей или None, если тип данных не должен применяться. |
msg | Необязательное сообщение для использования при ошибке вместо списка различий. |
assertSequenceStartsWith
assertSequenceStartsWith(
prefix, whole, msg=None
)
Утверждение о равенстве для начала упорядоченных последовательностей.
Если префикс является пустой последовательностью, он сгенерирует ошибку, если whole также не является пустой последовательностью.
Если префикс не является последовательностью, он сгенерирует ошибку, если первый элемент whole не совпадает.
| Аргументы | |
|---|---|
prefix | Последовательность, ожидаемая в начале параметра whole. |
whole | Последовательность, в которой следует искать префикс. |
msg | Необязательное сообщение для отчета об ошибке. |
assertSetEqual
assertSetEqual(
set1, set2, msg=None
)
Утверждение о равенстве, специфичное для множеств.
| Аргументы | |
|---|---|
set1 | Первое множество для сравнения. |
set2 | Второе множество для сравнения. |
msg | Необязательное сообщение для использования при ошибке вместо списка различий. |
assertSetEqual использует подтипизацию для поддержки различных типов множеств и оптимизирован для множеств (параметры должны поддерживать метод difference).
assertShapeEqual
assertShapeEqual(
input_a, input_b, msg=None
)
Утверждает, что две NumPy- или TensorFlow-объекты имеют одинаковую форму.
Для тензоров это сравнивает статически известные формы во время компиляции, а не динамические формы во время выполнения.
| Аргументы | |
|---|---|
input_a | NumPy-массив, NumPy-скаляр или тензор. |
input_b | NumPy-массив, NumPy-скаляр или тензор. |
msg | Необязательное сообщение для отчета об ошибке. |
| Исключения | |
|---|---|
TypeError | Если аргументы имеют неправильный тип. |
assertStartsWith
assertStartsWith(
actual, expected_start, msg=None
)
Утверждает, что actual.startswith(expected_start) равно True.
| Аргументы | |
|---|---|
actual | строка |
expected_start | строка |
msg | Необязательное сообщение для отчета об ошибке. |
assertTotallyOrdered
assertTotallyOrdered(
*groups, **kwargs
)
Утверждает, что полное упорядочение реализовано правильно.
Например, предположим, что у вас есть класс A, который сравнивает только по своему атрибуту x. Сравнения, отличные от lt, опущены для краткости.
class A(object): def init(self, x, y): self.x = x self.y = y
def hash(self): return hash(self.x)
def lt(self, other): try: return self.x < other.x except AttributeError: return NotImplemented
assertTotallyOrdered проверит, что экземпляры могут быть упорядочены правильно. Например,
self.assertTotallyOrdered( [None], # None должен предшествовать всем остальным. [1], # Целые числа сортируются раньше. [A(1, 'a')], [A(2, 'b')], # 2 следует за 1. [A(3, 'c'), A(3, 'd')], # Второй аргумент несущественен. [A(4, 'z')], ['foo']) # Строки сортируются последними.
| Аргументы | |
|---|---|
*groups | Список групп элементов. Каждая группа элементов — это список объектов, которые равны. Элементы в каждой группе должны быть меньше элементов в следующей группе. Например, эти группы полностью упорядочены: [None], [1], [2, 2], [3]. **kwargs: необязательный аргумент msg может быть передан. |
assertTrue
assertTrue(
expr, msg=None
)
Проверить, что выражение истинно.
assertTupleEqual
assertTupleEqual(
tuple1, tuple2, msg=None
)
Утверждение о равенстве, специфичное для кортежей.
| Аргументы | |
|---|---|
tuple1 | Первый кортеж для сравнения. |
tuple2 | Второй кортеж для сравнения. |
msg | Необязательное сообщение для использования при ошибке вместо списка различий. |
assertUrlEqual
assertUrlEqual(
a, b, msg=None
)
Утверждает, что URL-адреса равны, игнорируя порядок параметров запроса.
assertWarns
assertWarns(
expected_warning, *args, **kwargs
)
Не проходит, если предупреждение класса warnClass не вызывается вызываемым объектом при вызове с указанными позиционными и ключевыми аргументами. Если вызывается предупреждение другого типа, оно не обрабатывается: в зависимости от других правил фильтрации предупреждений, оно может быть отключено, напечатано или вызвано как исключение.
Если вызывается с вызываемым объектом и опущенными аргументами, возвращает объект контекста, используемый так::
with self.assertWarns(SomeWarning):
do_something()
Необязательный ключевой аргумент «msg» может быть передан, когда assertWarns используется как объект контекста.
Объект контекста сохраняет ссылку на первое соответствующее предупреждение как атрибут «предупреждение»; аналогично, атрибуты «имя файла» и «номер строки» предоставляют вам информацию о строке кода Python, из которой было сгенерировано предупреждение. Это позволяет вам просмотреть предупреждение после утверждения::
with self.assertWarns(SomeWarning) as cm:
do_something()
the_warning = cm.warning
self.assertEqual(the_warning.some_attribute, 147)
assertWarnsRegex
assertWarnsRegex(
expected_warning, expected_regex, *args, **kwargs
)
Утверждает, что сообщение в вызвавшем предупреждении соответствует регулярному выражению. Основной принцип работы аналогичен assertWarns() с добавлением, что только предупреждения, сообщения которых также соответствуют регулярному выражению, считаются успешными совпадениями.
| Аргументы | |
|---|---|
expected_warning | Ожидаемый класс предупреждения. |
expected_regex | Ожидаемое регулярное выражение (объект re.Pattern или строка), которое должно быть найдено в сообщении об ошибке. |
args | Вызываемый объект и дополнительные позиционные аргументы. |
kwargs | Дополнительные ключевые аргументы. |
msg | Необязательное сообщение, используемое в случае ошибки. Может быть использовано только при использовании assertWarnsRegex как объекта контекста. |
assert_
assert_(
*args, **kwargs
)
cached_session
@contextlib.contextmanager
cached_session(
graph=None, config=None, use_gpu=True, force_gpu=False
)
Возвращает объект TensorFlow Session для использования в тестах.
Этот метод отличается от self.session(): по соображениям производительности cached_session по умолчанию повторно использует ту же сессию в рамках одного теста. Сессия, возвращаемая этой функцией, будет закрыта только в конце теста (в функции TearDown).
Используйте параметры use_gpu и force_gpu, чтобы управлять местоположением выполнения операций. Если force_gpu равно True, все операции привязаны к /device:GPU:0. В противном случае, если use_gpu равно True, TensorFlow пытается выполнить как можно больше операций на GPU. Если оба force_gpu anduse_gpu` равны False, все операции привязаны к CPU.
Пример:
class MyOperatorTest(test_util.TensorFlowTestCase):
def testMyOperator(self):
with self.cached_session() as sess:
valid_input = [1.0, 2.0, 3.0, 4.0, 5.0]
result = MyOperator(valid_input).eval()
self.assertEqual(result, [1.0, 2.0, 3.0, 5.0, 8.0]
invalid_input = [-1.0, 2.0, 7.0]
with self.assertRaisesOpError("negative input not supported"):
MyOperator(invalid_input).eval()
| Аргументы | |
|---|---|
graph | Необязательный граф для использования во время возвращаемой сессии. |
config | Необязательная конфигурация config_pb2.ConfigProto для настройки сессии. |
use_gpu | Если True, попытаться выполнить как можно больше операций на GPU. |
force_gpu | Если True, привязать все операции к /device:GPU:0. |
| Возвращает | |
|---|---|
| Объект Session, который должен использоваться как менеджер контекста для окружения кода построения и выполнения графа в тесте. |
captureWritesToStream
@contextlib.contextmanager
captureWritesToStream(
stream
)
Менеджер контекста, который захватывает записи в заданный поток.
Этот менеджер контекста захватывает все записи в заданный поток внутри объекта CapturedWrites. При создании этого менеджера контекста он возвращает объект CapturedWrites. Захваченное содержимое можно получить, вызвав .contents() на объекте CapturedWrites.
Для работы этой функции поток должен иметь дескриптор файла, который можно изменить с помощью os.dup и os.dup2, а также поток должен поддерживать метод .flush(). Примерами являются стандартные python sys.stdout и sys.stderr. Обратите внимание, что в Colab или Jupyter notebooks это не работает, так как там используются альтернативные потоки stdout.
Пример:
class MyOperatorTest(test_util.TensorFlowTestCase):
def testMyOperator(self):
input = [1.0, 2.0, 3.0, 4.0, 5.0]
with self.captureWritesToStream(sys.stdout) as captured:
result = MyOperator(input).eval()
self.assertStartsWith(captured.contents(), "This was printed.")
| Аргументы | |
|---|---|
stream | Поток, записи которого необходимо захватить. Этот поток должен иметь дескриптор файла, поддерживать запись с помощью этого дескриптора и должен иметь метод .flush() . |
| Возвращаемые значения | |
|---|---|
Объект CapturedWrites , содержащий все записи в указанный поток, сделанные в течение этого контекста. |
checkedThread
checkedThread(
target, args=None, kwargs=None
)
Возвращает обёртку потока, которая проверяет, что «target» завершился успешно.
Этот метод следует использовать для создания всех потоков в тестовых случаях, так как в противном случае существует риск того, что поток потерпит молчаливое поражение, и/или утверждения, сделанные в потоке, не будут учтены.
| Аргументы | |
|---|---|
target | Вызываемый объект, который должен быть выполнен в потоке. |
args | Кортеж аргументов для вызова целевой функции. По умолчанию (). |
kwargs | Словарь ключевых аргументов для вызова целевой функции. По умолчанию {}. |
| Возвращаемые значения | |
|---|---|
| Обёртка для threading.Thread, поддерживающая методы start() и join(). |
countTestCases
countTestCases()
create_tempdir
create_tempdir(
name=None, cleanup=None
)
Создаёт временную директорию, специфичную для теста.
Примечание: Директория и её содержимое будут рекурсивно очищены перед созданием. Это гарантирует отсутствие предварительного состояния.
Это создаёт именованную директорию на диске, изолированную для этого теста, и будет правильно очищена тестом. Это позволяет избежать нескольких проблем при создании временных директорий для целей тестирования, а также упрощает настройку директорий и проверку их содержимого. Например:
def test_foo(self):
out_dir = self.create_tempdir()
out_log = out_dir.create_file('output.log')
expected_outputs = [
os.path.join(out_dir, 'data-0.txt'),
os.path.join(out_dir, 'data-1.txt'),
]
code_under_test(out_dir)
self.assertTrue(os.path.exists(expected_paths[0]))
self.assertTrue(os.path.exists(expected_paths[1]))
self.assertEqual('foo', out_log.read_text())
См. также: create_tempfile() для создания временных файлов.
| Аргументы | |
|---|---|
name | Необязательное имя директории. Если не указано, будет сгенерировано уникальное имя. |
cleanup | Необязательная политика очистки о том, когда и если удалить директорию (и всё её содержимое) по завершении теста. Если None, то используется self.tempfile_cleanup. |
| Возвращаемые значения | |
|---|---|
| _TempDir, представляющий созданную директорию; см. документацию класса _TempDir для использования. |
create_tempfile
create_tempfile(
file_path=None,
content=None,
mode='w',
encoding='utf8',
errors='strict',
cleanup=None
)
Создаёт временный файл, специфичный для теста.
Это создаёт именованный файл на диске, изолированный для этого теста, и будет правильно очищен тестом. Это позволяет избежать нескольких проблем при создании временных файлов для целей тестирования, а также упрощает настройку файлов, их данных, считывание их обратно и проверку при сбое теста. Например:
def test_foo(self):
output = self.create_tempfile()
code_under_test(output)
self.assertGreater(os.path.getsize(output), 0)
self.assertEqual('foo', output.read_text())
Примечание: Файл будет обнулён. Это гарантирует отсутствие предварительного состояния. ВАЖНО: Если файл уже существует, он будет сделан доступным для записи и перезаписан.
См. также: create_tempdir() для создания временных директорий и _TempDir.create_file для создания файлов внутри временной директории.
| Аргументы | |
|---|---|
file_path | Необязательный путь к временному файлу. Если не указан, будет сгенерировано уникальное имя файла. Разрешены слеши в имени; любые недостающие промежуточные директории будут созданы. ВАЖНО: Этот путь будет очищен, включая любые директории в пути, например, 'foo/bar/baz.txt' будет rm -r foo. |
content | Необязательная строка или байты, которые должны быть первоначально записаны в файл. Если не указано, создаётся пустой файл. |
mode | Строка режима, используемая при записи содержимого. Используется только если content не пусто. |
encoding | Кодировка, используемая при записи строкового содержимого. Используется только если content является текстом. |
errors | Как обрабатывать ошибки кодирования текста в байты. Используется только если content является текстом. |
cleanup | Необязательная политика очистки по тому, когда и если удалить директорию (и всё её содержимое) в конце теста. Если None, то используется self.tempfile_cleanup. |
| Возвращаемые значения | |
|---|---|
| _TempFile, представляющий созданный файл; см. документацию класса _TempFile для использования. |
debug
debug()
Запускает тест без сбора ошибок в TestResult
defaultTestResult
defaultTestResult()
doCleanups
doCleanups()
Выполняет все функции очистки. Обычно вызывается за вами после tearDown.
enter_context
enter_context()
evaluate
evaluate(
tensors
)
Вычисляет тензоры и возвращает значения numpy.
| Аргументы | |
|---|---|
tensors | Тензор или вложенный список/кортеж тензоров. |
| Возвращаемые значения | |
|---|---|
| numpy значения тензоров. |
evaluate_if_both_tensors
evaluate_if_both_tensors(
a, b
)
fail
fail(
msg=None, prefix=None
)
Немедленно завершается с указанным сообщением, необязательно с префиксом.
failIf
failIf(
*args, **kwargs
)
failIfAlmostEqual
failIfAlmostEqual(
*args, **kwargs
)
failIfEqual
failIfEqual(
*args, **kwargs
)
failUnless
failUnless(
*args, **kwargs
)
failUnlessAlmostEqual
failUnlessAlmostEqual(
*args, **kwargs
)
failUnlessEqual
failUnlessEqual(
*args, **kwargs
)
failUnlessRaises
failUnlessRaises(
*args, **kwargs
)
get_temp_dir
get_temp_dir()
Возвращает уникальную временную директорию для использования тестом.
Если вы вызываете этот метод несколько раз во время теста, он вернёт ту же папку. Однако в разных запусках директории будут разными. Это гарантирует, что в разных запусках тесты не смогут загрязнять среду друг друга. Если вам нужны несколько уникальных директорий в одном тесте, используйте tempfile.mkdtemp следующим образом: tempfile.mkdtemp(dir=self.get_temp_dir()):
| Возвращаемые значения | |
|---|---|
| строка, путь к уникальной временной директории, созданной для этого теста. |
id
id()
run
run(
result=None
)
session
@contextlib.contextmanager
session(
graph=None, config=None, use_gpu=True, force_gpu=False
)
Менеджер контекста для сессии TensorFlow для использования в выполнении тестов.
Обратите внимание, что это установит эту сессию и граф в качестве глобальных значений по умолчанию.
Используйте опции use_gpu и force_gpu для управления тем, где выполняются операции. Если force_gpu равно True, все операции привязаны к /device:GPU:0. В противном случае, если use_gpu равно True, TensorFlow пытается выполнить как можно больше операций на GPU. Если оба force_gpu anduse_gpu` равны False, все операции привязаны к CPU.
Пример:
class MyOperatorTest(test_util.TensorFlowTestCase):
def testMyOperator(self):
with self.session():
valid_input = [1.0, 2.0, 3.0, 4.0, 5.0]
result = MyOperator(valid_input).eval()
self.assertEqual(result, [1.0, 2.0, 3.0, 5.0, 8.0]
invalid_input = [-1.0, 2.0, 7.0]
with self.assertRaisesOpError("negative input not supported"):
MyOperator(invalid_input).eval()
| Аргументы | |
|---|---|
graph | Необязательный граф для использования во время возвращаемой сессии. |
config | Необязательный config_pb2.ConfigProto для настройки сессии. |
use_gpu | Если True, попытаться выполнить как можно больше операций на GPU. |
force_gpu | Если True, привязать все операции к /device:GPU:0. |
| Возвращаемые значения | |
|---|---|
| Объект Session, который следует использовать как менеджер контекста, чтобы окружать код построения и выполнения графа в тестовом случае. |
setUp
setUp()
Метод установки для подготовки тестового фикстура перед его применением.
setUpClass
@classmethod setUpClass()
Метод-обработчик для настройки фикстуры класса перед запуском тестов в классе.
shortDescription
shortDescription()
Форматирует имя метода теста и первую строку его документации.
Если документация не указана, возвращает только имя метода.
Этот метод переопределяет unittest.TestCase.shortDescription(), который возвращает только первую строку документации, скрывая имя теста при сбое.
| Возвращаемое значение | |
|---|---|
desc | Краткое описание метода теста. |
skipTest
skipTest(
reason
)
Пропустить этот тест.
subTest
@contextlib.contextmanager
subTest(
msg=_subtest_msg_sentinel, **params
)
Возвращает менеджер контекста, который вернет заключенный блок кода в подтесте, идентифицированный необязательными параметрами сообщения и ключевых слов. Сбой в подтесте отмечает тестовый случай как неудачный, но возобновляет выполнение в конце заключенного блока, позволяя выполнить дальнейший тестовый код.
tearDown
tearDown()
Метод-обработчик для разборки фикстуры теста после её тестирования.
tearDownClass
@classmethod tearDownClass()
Метод-обработчик для разборки фикстуры класса после выполнения всех тестов в классе.
test_session
@contextlib.contextmanager
test_session(
graph=None, config=None, use_gpu=True, force_gpu=False
)
Используйте cached_session вместо этого. (устарело)
__call__
__call__(
*args, **kwds
)
Вызвать self как функцию.
__eq__
__eq__(
other
)
Вернуть self==value.
| Переменные класса | |
|---|---|
| longMessage | True |
| maxDiff | 1600 |
| tempfile_cleanup | <TempFileCleanup.ALWAYS: 'always'> |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/test/TestCase