Kerangka UnitTest - Uji Waktu

Junit, kerangka pengujian unit Java (Pyunit adalah implementasi JUnit) memiliki opsi waktu tunggu yang praktis. Jika tes memakan waktu lebih dari waktu yang ditentukan, itu akan ditandai sebagai gagal.

Kerangka pengujian Python tidak mendukung waktu habis. Namun, modul bagian ketiga yang disebut dekorator batas waktu dapat melakukan pekerjaan itu.

Unduh dan instal modul dari -

https://pypi.python.org/packages/source/t/timeout-decorator/timeout-decorator-0.3.2.tar.gz

  • Impor timeout_decorator ke dalam kode
  • Letakkan dekorator batas waktu sebelum ujian
  • @timeout_decorator.timeout(10)

Jika metode pengujian di bawah garis ini membutuhkan lebih dari waktu tunggu yang disebutkan (10 menit) di sini, TimeOutError akan dimunculkan. Misalnya -

import time
import timeout_decorator

class timeoutTest(unittest.TestCase):

   @timeout_decorator.timeout(5)
   def testtimeout(self):
      print "Start"
   for i in range(1,10):
      time.sleep(1)
      print "%d seconds have passed" % i
      
if __name__ == '__main__':
   unittest.main()