Astropyテストツール

本節では,Astropyテスト機構を理解または追加したい開発者の参考に供する.参照してください テストガイド. 運行または作成テストの概要については、参照されたい。

astropy.tests.helper モジュール.モジュール

Astropyを用いたテストの開発を簡単にするために, astropy.tests.helper モジュールは、Astropyコミットメントまたはクラスを使用するテストをより容易に使用するために、例えば、テストのためのいくつかのユーティリティ関数を提供する Quantity 物体です。

ここの機能は詳細ではありません多くの有用なツールが標準ライブラリにあるからです pytest あるいは、あるいは numpy.testing それがそうです。このモジュールは、主にAstropyコアパケットまたはAstropyパッケージテンプレートに準拠するパケットに固有の機能を含む。

参照/API

Asterpy.tests.helperモジュール

機能

enable_deprecations_as_exceptions \([...] )

破棄を異常に変換する機能を開く.

treat_deprecations_as_exceptions \()

すべてのDeproationWarning(Python自体やNumpyは破棄されたことを示すが,Astropyでは使用せず,Astropyでは自分の廃棄警告クラスを使用する)を異常に変換し,それらを早期に発見する.

assert_follows_unicode_guidelines \(X[, roundtrip] )

テスト対象が我々のUnicode戦略に従っているかどうか.

assert_quantity_allclose \(実際の,期待[, ...] )

2つのオブジェクトが必要な許容差に等しくない場合、アサートが発行される。

check_pickling_recovery \(オリジナル,プロトコル)

何かを漬けてみましょう

pickle_protocol \(要求)

Fixtureは、プロトコル0、1、および-1(最上位)のすべてのテストを実行します。

generic_recursive_equality_test \(a,b,...)

Aとbの属性が等しいかどうかを調べる.

クラス

raises \(exc)

マーキングテストは、所与の異常な装飾符を誘発しなければならない。使用方法は以下のとおりである.

catch_warnings \(*クラス)

テストのために使用され、テスト実行順序に依存しないWarnings.Catch_Warningの高性能バージョンを保証する。

Astropyテスト実行プログラム

テストを実行する際に astropy.test Pytestの呼び出しは astropy.tests.runner.TestRunner 級友たち。

♪the TestRunner クラスは生成に用いる astropy.test 関数の場合,test関数は命令ラインパラメータの組を生成してpytestを行う.Pytestのパラメータは run_tests 方法では,パラメータを run_tests メソッドにはそれぞれの論理が定義されている. TestRunner 飾られている keyword 装飾師です。この方面の例については,参照されたい TestRunnerBase それがそうです。このような設計により、パケットは、そのテスト実行器にキーワードパラメータを容易に追加または除去することができ、または TestRunnerBase それがそうです。

参照/API

class astropy.tests.runner.keyword(default_value=None, priority=0)[ソース]

方法を表記する TestRunner それがそうです。

パラメータ
default_valueobject客体.

キーワードパラメータのデフォルト値。(デフォルト: None

優先度.int集積する.

キーワードパラメータメソッドは優先度の降順に実行される.

class astropy.tests.runner.TestRunnerBase(*args, **kwargs)[ソース]

TestRunnerの基底類。

このようなサブクラスを作成し、“キーワード”方法を定義することによって、テスト実行器を構築することができる。これらの方法は keyword 修飾子、これらの方法は、許容されるキーワードパラメータを構築するために使用される run_tests 方法は、全体を再実現することなく、単一のキーワードパラメータ(および関連論理)をカスタマイズすることを可能にする方法として機能する。 run_tests 方法です。

実例.

簡単なキーワード方法です

class MyRunner(TestRunnerBase):

    @keyword('default_value'):
    def spam(self, spam, kwargs):
        """
        spam : `str`
            The parameter description for the run_tests docstring.
        """
        # Return value must be a list with a CLI parameter for pytest.
        return ['--spam={}'.format(spam)]
class astropy.tests.runner.TestRunner(*args, **kwargs)[ソース]

天文テストの試走者