Isi kandungan:

Bolehkah anda menguji kaedah statik unit?
Bolehkah anda menguji kaedah statik unit?

Video: Bolehkah anda menguji kaedah statik unit?

Video: Bolehkah anda menguji kaedah statik unit?
Video: PENDIDIKAN JASMANI TAHUN 5 UNIT 1: JADI YANG TERBAIK TAJUK: IMBANGAN STATIK 2024, November
Anonim

Kepada ujian unit anda perlu mengambil sekeping kecil awak kod, pendawaian semula kebergantungannya dan ujian ia secara berasingan. Ini susah kaedah statik , bukan sahaja dalam kes mereka mengakses keadaan global malah jika mereka hanya memanggil yang lain kaedah statik.

Memandangkan ini, bagaimana anda menguji kaedah statik?

Terdapat empat langkah mudah dalam menyediakan ujian yang mengejek panggilan statik:

  1. Gunakan pelari PowerMock JUnit: @RunWith(PowerMockRunner.
  2. Isytiharkan kelas ujian yang kami ejek:
  3. Beritahu PowerMock nama kelas yang mengandungi kaedah statik:
  4. Sediakan jangkaan, memberitahu PowerMock untuk mengharapkan panggilan ke kaedah statik:

Begitu juga, bolehkah kita mengejek kaedah statik C#? 4 Jawapan. Moq (dan lain-lain berasaskan DynamicProxy mengejek rangka kerja) tidak dapat mengejek apa-apa yang bukan maya atau abstrak kaedah . Sebagai alternatif, kamu boleh faktorkan semula reka bentuk anda kepada panggilan abstrak ke kaedah statik , dan berikan abstraksi ini kepada kelas anda melalui suntikan pergantungan.

Berkenaan dengan ini, bagaimanakah anda menguji unit kaedah persendirian?

Ujian unit hanya API yang tersedia untuk umum. Apabila menulis ujian unit , meniru tingkah laku pelanggan SUT. jangan menguji kaedah persendirian . sama ada ujian unit mereka secara tidak langsung, menggunakan API awam, atau mengekstraknya ke dalam kelas berasingan dan ujian kelas tersebut sebaliknya.

Apakah kaedah statik?

Di Jawa, a kaedah statik ialah kaedah yang tergolong dalam kelas dan bukannya contoh kelas. The kaedah boleh diakses oleh setiap contoh kelas, tetapi kaedah yang ditakrifkan dalam contoh hanya boleh diakses oleh ahli kelas itu.

Disyorkan: