Langkah ujian unit C++: Tulis kod untuk diuji dan asingkan fungsi ujian dan kod ujian. Sediakan persekitaran ujian, termasuk fail pengepala dan memanggil RUN_ALL_TESTS(). Cipta kes ujian, menggunakan makro TEST() untuk mentakrifkan kes ujian dan makro ASSERT_*() untuk mengesahkan keputusan. Tulis kes ujian untuk setiap ciri. Susun fail ujian dan jalankan boleh laku untuk melaksanakan ujian. Semak keputusan ujian untuk mengesahkan bahawa semua ujian lulus.
C++ Unit Testing: Steps and Process
Langkah 1: Tulis kod untuk diuji
Buat fail berasingan untuk meletakkan kod yang akan diuji. Pastikan untuk memisahkan fungsi yang sedang diuji daripada kod ujian.
Langkah 2: Sediakan persekitaran ujian
Sertakan fail pengepala yang diperlukan dalam fail ujian, seperti gtest/gtest.h
. Buat fungsi main()
untuk memanggil RUN_ALL_TESTS()
, yang akan menjalankan semua ujian. gtest/gtest.h
。创建 main()
函数以调用 RUN_ALL_TESTS()
,这将运行所有测试。
步骤 3:创建测试用例
创建一个 TEST()
宏来定义测试用例。每个测试用例都包含一个 ASSERT_*()
宏来检查执行的结果。
步骤 4:编写测试用例
为每个正在测试的功能编写一个测试用例。使用 ASSERT_*()
宏来验证预期结果与实际结果是否匹配。
实战案例
以下是一个 C++ 单元测试实战案例:
// my_function.h int my_function(int a, int b); // my_function_test.cpp #include "gtest/gtest.h" TEST(MyFunctionTest, PositiveNumbers) { ASSERT_EQ(my_function(2, 3), 5); } TEST(MyFunctionTest, NegativeNumbers) { ASSERT_EQ(my_function(-2, -3), -5); }
步骤 5:运行测试
使用 g++
编译器和 -lgtest
链接标志编译测试文件。然后运行可执行文件以执行测试。
步骤 6:检查结果
测试运行后,它将输出有关测试结果的信息。通过 success
或 failure
TEST()
untuk mentakrifkan kes ujian. Setiap kes ujian mengandungi makro ASSERT_*()
untuk menyemak keputusan pelaksanaan. 🎜🎜🎜Langkah 4: Tulis Kes Ujian 🎜🎜🎜Tulis kes ujian untuk setiap ciri yang diuji. Gunakan makro ASSERT_*()
untuk mengesahkan bahawa hasil yang dijangkakan sepadan dengan hasil sebenar. 🎜🎜🎜Kes praktikal🎜🎜🎜Berikut ialah kes praktikal ujian unit C++:🎜rrreee🎜🎜Langkah 5: Jalankan ujian🎜🎜🎜Gunakan pengkompil g++
dan -lgtest kod> Susun fail ujian dengan bendera pautan. Kemudian jalankan boleh laku untuk melaksanakan ujian. 🎜🎜🎜Langkah 6: Semak keputusan 🎜🎜🎜Selepas ujian dijalankan, ia akan mengeluarkan maklumat tentang keputusan ujian. Sahkan bahawa semua ujian lulus melalui mesej <code>kejayaan
atau gagal
. 🎜Atas ialah kandungan terperinci Apakah langkah dan proses ujian unit fungsi C++?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!