- mengautomasikan debugging dalam git dengan ujian unit melibatkan menggunakan arahan 'bisect' untuk melintasi komitmen dan mengenal pasti yang memperkenalkan bug. Proses ini boleh automatik dengan skrip, mengurangkan keperluan untuk pelabelan manual komited sebagai 'baik' atau 'buruk'.
- Ujian unit adalah penting dalam proses ini, kerana ia dijalankan untuk setiap komit untuk menentukan sama ada ia harus diberikan sebagai 'baik' atau 'buruk'. Ini boleh dilakukan dengan menggunakan arahan seperti 'git bisect run [perintah untuk menjalankan ujian]'. Sebaik sahaja ujian dijalankan untuk setiap komit, GIT dapat mengenal pasti komit yang memperkenalkan kesilapan.
- Apabila asas kod meningkat saiz, ujian unit menulis untuk setiap kod menjadi perlu. Walaupun ia mungkin kelihatan memakan masa pada mulanya, ia membantu dalam debug dan menjimatkan masa dalam jangka masa panjang. Ia juga mungkin untuk membuat skrip shell tersuai dengan kod keluar tersuai untuk menggantikan ujian unit.
untuk menyegarkan ingatan anda, git bisect melibatkan beberapa langkah, yang diringkaskan di bawah:
- Mulakan wizard bisect dengan git bisect start
- Pilih "Baik" dan "Bad" yang dilakukan, atau yang diketahui dilakukan di mana bug itu tidak hadir dan hadir, masing -masing
- Berikan komitmen untuk diuji sebagai "baik" atau "buruk" sehingga git mengetahui komit yang memperkenalkan bug
- keluar dari wizard dengan git bisect reset
Secara semulajadi, langkah ketiga adalah memakan masa - Git akan menunjukkan anda melakukan satu persatu dan anda harus melabelkannya sebagai "baik" atau "buruk" setelah memeriksa apakah pepijat itu hadir dalam komit itu.
Apabila kita menulis skrip untuk mengautomasikan proses debugging, kita pada dasarnya akan menjalankan langkah ketiga. Mari kita mulakan!
Mementaskan Alam Sekitar
Dalam siaran ini, saya akan menulis modul kecil dalam python yang mengandungi fungsi yang menambah dua nombor. Ini adalah tugas yang sangat mudah dan saya akan melakukan ini untuk tujuan demonstrasi sahaja. Kod ini adalah penjelasan diri, jadi saya tidak akan masuk ke dalam butiran.
Untuk mengautomasikan proses git bisect, anda perlu menulis ujian untuk kod anda. Di Python, kami akan menggunakan modul Unittest untuk menulis kes ujian kami. Inilah ujian asas seperti.
<span>#add_two_numbers.py </span>def add_two_numbers<span>(a, b): </span> <span>''' </span> Function to <span>add two numbers </span> <span>''' </span> addition <span>= a + b </span> <span>return addition</span>
<span>#add_two_numbers.py </span>def add_two_numbers<span>(a, b): </span> <span>''' </span> Function to <span>add two numbers </span> <span>''' </span> addition <span>= a + b </span> <span>return addition</span>
kita boleh menulis lebih banyak ujian ini, tetapi ini hanya untuk menunjukkan bagaimana untuk meneruskannya. Sebenarnya, anda pasti akan menulis lebih banyak kes ujian kerana program dan aplikasi anda akan jauh lebih kompleks daripada ini.
Untuk menjalankan ujian unit, laksanakan fail tests.py yang mengandungi kes ujian anda.
<span>#tests.py </span><span>import unittest </span>from add_two_numbers <span>import add_two_numbers </span> class TestsForAddFunction<span>(unittest.TestCase): </span> def test_zeros<span>(self): </span> result <span>= add_two_numbers(0, 0) </span> self.assertEqual<span>(0, result) </span> <span>if __name__ == '__main__': </span> unittest.main<span>()</span>Jika ujian lulus, anda perlu mendapatkan output berikut.

python tests.pyUntuk mengesahkan bahawa ujian gagal, marilah kita menjalankannya lagi.


Untuk wizard bisect git, kami akan memilih komit terkini sebagai buruk (B60FE2CF35) dan yang pertama sebagai baik (98D9DF03B6).
def add_two_numbers<span>(a, b): </span> <span>''' </span> Function to <span>add two numbers </span> <span>''' </span> addition <span>= a + 0 </span> <span>return addition</span>Pada ketika ini, Git menunjuk kami untuk komit dan bertanya kepada kami sama ada ia adalah komitmen yang baik atau buruk. Ini adalah ketika kami memberitahu Git untuk menjalankan ujian untuk kami. Perintah untuknya adalah seperti berikut.
<span>git bisect start b60fe2cf35 98d9df03b6</span>Dalam kes kita, ia akan menjadi yang berikut.
<span>git bisect run [command to run tests]</span>Apabila kami memberikan arahan untuk menjalankan ujian itu sendiri, dan bukannya bertanya kepada kami, Git menjalankan ujian ini untuk setiap semakan dan memutuskan sama ada komit harus diberikan baik atau buruk.


Di tempat ujian unit anda, anda juga boleh membuat skrip shell tersuai dengan kod keluar tersuai. Secara umumnya kod keluar 0 dianggap sebagai kejayaan, segala -galanya adalah kegagalan.
Pemikiran Akhir
Oleh kerana saiz asas kod anda meningkat, ujian unit menulis untuk setiap kod kecil yang anda tulis menjadi perlu. Ujian menulis mungkin kelihatan memakan masa, tetapi seperti yang anda lihat dalam kes ini, mereka membantu anda dalam debug dan menjimatkan masa anda dalam jangka masa panjang.
Bagaimanakah kesilapan debug pasukan anda dalam kod? Beritahu kami dalam komen di bawah.
Soalan Lazim (Soalan Lazim) Mengenai Mengaut Mengotor Debug dengan Ujian Unit Git
Bagaimana saya boleh menyediakan debugging automatik dengan ujian unit git?
Menyediakan debugging automatik dengan ujian unit git melibatkan beberapa langkah. Pertama, anda perlu membuat repositori git dan memulakannya. Kemudian, anda perlu menulis ujian unit anda menggunakan kerangka ujian yang serasi dengan bahasa pengaturcaraan anda. Sebaik sahaja ujian anda ditulis, anda boleh menggunakan alat Integrasi Berterusan (CI) untuk mengautomasikan menjalankan ujian ini. Alat ini boleh dikonfigurasikan untuk menjalankan ujian anda setiap kali anda menolak perubahan ke repositori git anda. Dengan cara ini, anda boleh menangkap dan memperbaiki pepijat awal dalam proses pembangunan. Ia membantu menangkap bug awal dalam proses pembangunan, yang dapat menjimatkan masa dan sumber. Ia juga memastikan bahawa semua bahagian kod anda diuji secara konsisten. Ini dapat meningkatkan kualiti keseluruhan kod anda dan menjadikannya lebih dipercayai. Di samping itu, ia boleh menjadikan proses pembangunan anda lebih cekap dengan mengurangkan jumlah ujian manual yang perlu anda lakukan. > Integrasi Berterusan (CI) adalah amalan pembangunan di mana pemaju mengintegrasikan kod ke dalam repositori bersama, biasanya beberapa kali sehari. Setiap integrasi kemudiannya disahkan oleh ujian binaan dan automatik automatik. Dalam konteks ujian unit git, CI boleh digunakan untuk mengautomasikan ujian ini setiap kali perubahan ditolak ke repositori Git. Ini membantu menangkap pepijat lebih awal dan memastikan bahawa semua bahagian kod diuji secara konsisten. . Pertama, setiap ujian harus memberi tumpuan kepada fungsi atau tingkah laku tunggal. Ini menjadikannya lebih mudah untuk mengenal pasti punca sebarang kegagalan. Kedua, ujian harus bebas dan dapat berjalan dalam apa -apa perintah. Ini memastikan bahawa hasil satu ujian tidak menjejaskan hasil yang lain. Ketiga, ujian harus berulang dan menghasilkan hasil yang sama setiap kali mereka dijalankan. Ini memastikan ujian anda boleh dipercayai dan boleh dipercayai untuk menangkap bug. dengan ujian unit git. Ini termasuk alat integrasi berterusan (CI) seperti Jenkins, Travis CI, dan CircleCi. Alat ini boleh dikonfigurasikan untuk menjalankan ujian unit anda setiap kali anda menolak perubahan ke repositori git anda. Di samping itu, anda boleh menggunakan rangka kerja ujian seperti Junit (untuk Java), Pytest (untuk Python), dan Mocha (untuk JavaScript) untuk menulis ujian unit anda.
Bagaimanakah saya dapat mengintegrasikan ujian unit git saya dengan alat integrasi berterusan (CI)? Pertama, anda perlu mengkonfigurasi alat CI anda untuk menyambung ke repositori git anda. Kemudian, anda perlu mengkonfigurasinya untuk menjalankan ujian unit anda setiap kali perubahan ditolak ke repositori. Ini biasanya melibatkan menulis fail konfigurasi yang menentukan arahan untuk menjalankan ujian dan syarat -syarat di mana untuk menjalankannya. Ujian unit gagal, langkah pertama adalah untuk mengenal pasti punca kegagalan. Ini biasanya melibatkan mengkaji output ujian dan kod yang sedang diuji. Sebaik sahaja anda telah mengenal pasti punca itu, anda boleh membuat perubahan yang diperlukan pada kod anda dan mengubah ujian. Jika ujian berlalu, anda boleh menolak perubahan anda ke repositori Git. Sekiranya mereka gagal lagi, anda mungkin perlu menyemak semula ujian atau kod anda sehingga mereka lulus. dengan ujian unit git untuk mana -mana bahasa pengaturcaraan. Walau bagaimanapun, alat dan teknik khusus yang anda gunakan mungkin berbeza -beza bergantung kepada bahasa. Kebanyakan bahasa pengaturcaraan mempunyai satu atau lebih kerangka ujian yang boleh anda gunakan untuk menulis ujian unit anda. Di samping itu, alat integrasi yang paling berterusan (CI) menyokong pelbagai bahasa dan boleh dikonfigurasikan untuk menjalankan ujian anda tanpa mengira bahasa yang ditulisnya.
Memastikan ujian unit git anda berkesan melibatkan beberapa amalan terbaik. Pertama, ujian anda harus meliputi semua bahagian kod anda, termasuk kes kelebihan. Ini memastikan ujian anda komprehensif. Kedua, ujian anda harus bebas dan dapat berjalan dalam apa -apa perintah. Ini memastikan bahawa hasil satu ujian tidak menjejaskan hasil yang lain. Ketiga, ujian anda harus berulang dan menghasilkan hasil yang sama setiap kali mereka berjalan. Ini memastikan ujian anda boleh dipercayai. Kod, bukan antara muka pengguna (UI) aplikasi anda. Walau bagaimanapun, anda boleh menggunakan jenis ujian lain, seperti ujian integrasi atau ujian akhir-ke-akhir, untuk menguji UI anda. Ujian ini juga boleh automatik dan dijalankan menggunakan alat integrasi berterusan (CI). Ini dapat membantu menangkap pepijat di UI anda pada awal proses pembangunan.Atas ialah kandungan terperinci Automatikkan Debugging dalam Git dengan Ujian Unit. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kebangkitan kuasa teknologi wanita Cina dalam bidang AI: kisah di sebalik kerjasama Honor dengan sumbangan wanita DeepSeek ke bidang teknologi menjadi semakin penting. Data dari Kementerian Sains dan Teknologi China menunjukkan bahawa bilangan pekerja sains wanita dan teknologi sangat besar dan menunjukkan kepekaan nilai sosial yang unik dalam pembangunan algoritma AI. Artikel ini akan memberi tumpuan kepada telefon bimbit menghormati dan meneroka kekuatan pasukan wanita di belakangnya menjadi yang pertama untuk menyambung ke model besar DeepSeek, menunjukkan bagaimana mereka dapat mempromosikan kemajuan teknologi dan membentuk semula sistem koordinat nilai pembangunan teknologi. Pada 8 Februari 2024, Honor secara rasmi melancarkan model besar versi penuh darah DeepSeek-R1, menjadi pengeluar pertama di kem Android untuk menyambung ke Deepseek, membangkitkan sambutan bersemangat dari pengguna. Di sebalik kejayaan ini, ahli pasukan wanita membuat keputusan produk, penemuan teknikal dan pengguna

DeepSeek mengeluarkan artikel teknikal mengenai Zhihu, memperkenalkan sistem inferensi DeepSeek-V3/R1 secara terperinci, dan mendedahkan data kewangan utama untuk kali pertama, yang menarik perhatian industri. Artikel ini menunjukkan bahawa margin keuntungan kos harian sistem adalah setinggi 545%, menetapkan keuntungan model AI besar global yang tinggi. Strategi kos rendah DeepSeek memberikan kelebihan dalam persaingan pasaran. Kos latihan modelnya hanya 1% -5% daripada produk yang serupa, dan kos latihan model V3 hanya AS $ 5.576 juta, jauh lebih rendah daripada pesaingnya. Sementara itu, harga API R1 hanya 1/7 hingga 1/2 OpenAIO3-Mini. Data -data ini membuktikan kelayakan komersil laluan teknologi DeepSeek dan juga mewujudkan keuntungan yang cekap model AI.

Midea tidak lama lagi akan melepaskan penghawa dingin pertama yang dilengkapi dengan model besar DeepSeek - Midea Fresh and Clean Air Machine T6. Penghawa dingin ini dilengkapi dengan sistem memandu pintar udara maju, yang boleh menyesuaikan parameter dengan bijak seperti suhu, kelembapan dan kelajuan angin mengikut alam sekitar. Lebih penting lagi, ia mengintegrasikan model besar DeepSeek dan menyokong lebih daripada 400,000 arahan suara AI. Langkah Midea telah menyebabkan perbincangan yang hangat dalam industri, dan sangat prihatin terhadap kepentingan menggabungkan barangan putih dan model besar. Tidak seperti tetapan suhu mudah penghawa dingin tradisional, mesin udara segar dan bersih T6 dapat memahami arahan yang lebih kompleks dan samar -samar dan secara bijak menyesuaikan kelembapan mengikut persekitaran rumah, dengan ketara meningkatkan pengalaman pengguna.

Pembinaan laman web hanyalah langkah pertama: kepentingan SEO dan backlinks Membina laman web hanyalah langkah pertama untuk mengubahnya menjadi aset pemasaran yang berharga. Anda perlu melakukan pengoptimuman SEO untuk meningkatkan keterlihatan laman web anda di enjin carian dan menarik pelanggan yang berpotensi. Backlinks adalah kunci untuk meningkatkan kedudukan laman web anda, dan ia menunjukkan Google dan enjin carian lain kuasa dan kredibiliti laman web anda. Tidak semua pautan balik bermanfaat: mengenal pasti dan mengelakkan pautan yang berbahaya Tidak semua pautan balik bermanfaat. Pautan yang berbahaya boleh membahayakan kedudukan anda. Pemeriksaan backlink percuma yang sangat baik memantau sumber pautan ke laman web anda dan mengingatkan anda tentang pautan yang berbahaya. Di samping itu, anda juga boleh menganalisis strategi pautan pesaing anda dan belajar dari mereka. Alat Pemeriksaan Backlink Percuma: Pegawai Perisikan SEO anda

DeepSeek-R1 memberi kuasa kepada Perpustakaan Baidu dan Netdisk: Integrasi Perfaikan dan Tindakan yang sempurna telah diintegrasikan dengan cepat ke dalam banyak platform dalam masa satu bulan sahaja. Dengan susun atur strategik yang berani, Baidu mengintegrasikan Deepseek sebagai rakan model pihak ketiga dan mengintegrasikannya ke dalam ekosistemnya, yang menandakan kemajuan besar dalam strategi ekologi "carian model besar". Platform Pintar Pintar Wenxin dan Wenxin adalah yang pertama menyambung ke fungsi carian Deep dari model besar DeepSeek dan Wenxin, yang menyediakan pengguna dengan pengalaman carian AI percuma. Pada masa yang sama, slogan klasik "Anda Akan Tahu Apabila Anda Pergi ke Baidu", dan versi baru aplikasi Baidu juga mengintegrasikan keupayaan model besar Wenxin dan Deepseek, melancarkan "AI Search" dan "Refinement Rangkaian Wide Rangkaian"

Pengimbas kelemahan rangkaian berasaskan GO ini dengan cekap mengenal pasti kelemahan keselamatan yang berpotensi. Ia memanfaatkan ciri konkurensi Go untuk kelajuan dan termasuk pengesanan perkhidmatan dan pemadanan kelemahan. Mari kita meneroka keupayaan dan etika

AI Prompt Engineering untuk Generasi Kod: Panduan Pemaju Landskap pembangunan kod bersedia untuk peralihan yang ketara. Menguasai model bahasa yang besar (LLM) dan kejuruteraan segera akan menjadi penting bagi pemaju pada tahun -tahun akan datang. Th


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Dreamweaver CS6
Alat pembangunan web visual

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

Pelayar Peperiksaan Selamat
Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa