ATF自动化测试框架

联合创作 · 2023-10-01 19:11

ATF (Automated Testing Framework) 自动化测试框架。

测试示例代码:

// The t_example_1.cpp test program.

#include <atf-c++.hpp>

#include <cmath>
#include <cstdio>
#include <cstring>

ATF_TEST_CASE(pow_func);
ATF_TEST_CASE_HEAD(pow_func)
{
set_md_var("descr", "Checks the pow function");
}
ATF_TEST_CASE_BODY(pow_func)
{
using std::pow;

ATF_CHECK_EQUAL(pow(2.0, 0.0), 1);
ATF_CHECK_EQUAL(pow(2.0, 1.0), 2);
ATF_CHECK_EQUAL(pow(2.0, 2.0), 4);
ATF_CHECK_EQUAL(pow(2.0, 3.0), 8);
}

ATF_TEST_CASE(snprintf_func);
ATF_TEST_CASE_HEAD(snprintf_func)
{
set_md_var("descr", "Checks the snprintf function");
}
ATF_TEST_CASE_BODY(snprintf_func)
{
using std::snprintf;
using std::strcmp;

char buf[80];

snprintf(buf, 80, "Hello");
ATF_CHECK(strcmp(buf, "Hello") == 0);

snprintf(buf, 80, "Hello %d", 5);
ATF_CHECK(strcmp(buf, "Hello 5") == 0);

snprintf(buf, 80, "Hello %s", "world");
ATF_CHECK(strcmp(buf, "Hello world") == 0);
}

ATF_INIT_TEST_CASES(tcs)
{
ATF_ADD_TEST_CASE(tcs, pow_func);
ATF_ADD_TEST_CASE(tcs, snprintf_func);
}
浏览 12
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报