3.ユニットテストフレームワーク(unittestの)1 - テストケース

 

1.インポートユニットテスト
  unittestのモジュールが導入されます。
 
2.クラスSearchTest(たunittest.TestCase):
  サブクラスを定義するテストケース継承されます。
 
3.デフセットアップ(自己):
  試験方法executorが優先的試験方法の各実行に先立って実行(同じ環境に依存することができ、各試験方法を確保するために)。
  この方法は、パラメータを取らないし、値を返しません。
 
4.デフtest_search_by_category(自己):
  試験()メソッドは、テストケースクラスに実装され、重要な点は、試験の開始と命名方法をテストする必要があることである。この規則は、試験方法を表すテストランナー方式を通知します。
 
5. self.assertEqual(1、LEN(製品))
  期待される結果を検証するためにassertEqual(期待値、実際の値)を呼び出します。
  この検証プログラムの検索語のと返されたが、期待した結果が一致するかどうかの結果。
 
6.デフティアダウン(自己):
  TestCaseクラスは、完了するために、テスト後の初期値のすべてをクリーンアップするティアダウン()メソッドが呼び出されます。
  )テストが実行されると、(セットアップで定義された値方法はもはや必要ではないので、ベストプラクティスは、テストの値が完了すると、セットアップ()メソッドによって初期化を一掃することです。
 
7。
  __name__ == '__main__' の場合:
  unittest.main(冗長= 2)
  実行して、コマンドラインをテストするために、我々はテストケース内のメインメソッドの呼び出しを追加することができます。
  詳細なテストをするために渡される冗長性のパラメータは、コンソールで合計金額を示しています。
    冗長性は、オプションであり、三つの値は、情報の複雑さの試験結果があることを意味します
    0(サイレントモード):あなただけの合計を得ることができ、テストケースをして、そのような失敗20成功80の100の結果の合計の合計
    1 (默认模式): 非常类似静默模式 只是在每个成功的用例前面有个“.” 每个失败的用例前面有个 “F”
    2 (详细模式):测试结果会显示每个测试用例的所有相关的信息
    并且 你在命令行里加入不同的参数可以起到一样的效果
    加入 --quiet 参数 等效于 verbosity=0
    加入--verbose参数等效于 verbosity=2
    什么都不加就是 verbosity=1
 

 

8. 改初始化和结束初始化的方法级别的方法为类级别的方法,类级别的方法,无论类中有多少个用例,都只会共用一个浏览器;
  @classmethod
  def setUpClass(cls):
   @classmethod
  def tearDownClass(cls):
 
9. 方法中的self指向类的实例,有点this的意思,不加self的变量是本地变量,加了就是实例变量;
 
10. 测试用例执行顺序解决办法:
  1. 测试套件
    testcase = unittest.TestLoader().loadTestsfromTestCase(测试类)
    suites = unittest.TestSuite()
    suites.addTest(class('testcase')
  2. TestCase的名称:按照1-9,A-Z,a-z
  3. 补充unittest的框架:如链接楼主的utx;

 

おすすめ

転載: www.cnblogs.com/noobzeng/p/10991844.html