2017-12-26 20 views
0

私はPythonで簡単なパッケージを書いています。ルートディレクトリには、私の構造は現在、Python Travis-CI:テストコードのメインコードをインポートする

  • my_package
    • のinitの.py
    • main_code.py
  • テスト
    • のinitです。 py
    • test_main_code.py

私はtest_main_code.pyにmain_code.pyからのすべての機能をインポートしたいです。これを達成するには、私はした

import sys 
import os 
sys.path.append(os.path.dirname(os.path.realpath(__file__)) + '\..' + '\my_package') 
from main_code import * 

これは私のシステム上でスムーズに実行されます。しかし、コードをgithubにプッシュしてテストをtravis-ciで実行すると、すべてのテストが失敗し、NameErrorが返されます。与えられた関数名は定義されていません。 travis-ciでテストを実行する方法を確認するにはどうすればよいですか?

+0

は、このドキュメントを参照してください。それはあなたが必要とするものを持っています://docs.python.org/3/reference/import.html – Seenivasan

答えて

0

他の場所でテストを実行すると、パスが異なる可能性があるため、特定の場所に関連するインポートを信頼できません。 いずれにしても、私はいつもプロジェクトのルートからテストを実行しようとします

その後、あなたは簡単に試すことができます。

from my_package.main_code import *

関連する問題