Feature: performance test case

This commit is contained in:
liuxueli
2024-06-20 02:33:35 +00:00
parent cae0281c2f
commit 5496804914
14 changed files with 167 additions and 84 deletions

View File

@@ -21,7 +21,9 @@ set(TEST_MAIN ${TEST_RUN_DIR}/plugin_test_main)
# copy perf main
add_test(NAME COPY_PERF_TEST_MAIN COMMAND sh -c "cp ${CMAKE_BINARY_DIR}/test/dns_decoder_perf_test ${TEST_RUN_DIR}/dns_decoder_perf_test")
add_test(NAME MKDIR_PERF COMMAND sh -c "mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/perf/ ${CMAKE_CURRENT_BINARY_DIR}/perf/etc/dns/")
add_test(NAME COPY_PERF_TEST_MAIN COMMAND sh -c "cp ${CMAKE_BINARY_DIR}/test/dns_decoder_perf_test ${CMAKE_CURRENT_BINARY_DIR}/perf")
add_test(NAME COPY_PERF_TEST_CONF COMMAND sh -c "cp ${PROJECT_SOURCE_DIR}/bin/${PROJECT_NAME}.toml ${CMAKE_CURRENT_BINARY_DIR}/etc/dns/${PROJECT_NAME}.toml")
# assemble test env
add_test(NAME INSTALL_TEST_MAIN COMMAND sh -c "rpm -i ${CMAKE_CURRENT_SOURCE_DIR}/env/sapp-4.3.57.16ea514-1.el8.x86_64.rpm --prefix=${CMAKE_CURRENT_BINARY_DIR}/sapp --force --nodeps")

View File

@@ -841,7 +841,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_19"
},
{
@@ -1222,7 +1221,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_26"
},
{
@@ -1363,7 +1361,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_32"
},
{
@@ -2187,7 +2184,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_55"
},
{
@@ -2325,7 +2321,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_61"
},
{
@@ -2613,7 +2608,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_72"
},
{
@@ -2699,7 +2693,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_76"
},
{
@@ -2937,7 +2930,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_84"
},
{
@@ -3139,7 +3131,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_90"
},
{
@@ -3150,7 +3141,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_91"
},
{
@@ -3161,7 +3151,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_92"
},
{
@@ -3380,7 +3369,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_101"
},
{

View File

@@ -342,7 +342,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_4"
},
{
@@ -2581,7 +2580,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_66"
},
{
@@ -2592,7 +2590,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_67"
},
{
@@ -3403,7 +3400,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_87"
}
]

View File

@@ -69,7 +69,6 @@
"dns_qr": 0,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_3"
},
{

View File

@@ -7,7 +7,6 @@
"dns_qr": 0,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_1"
},
{

View File

@@ -30,7 +30,6 @@
"dns_qr": 0,
"dns_opcode": 0,
"dns_rd": 0,
"rr": {},
"name": "DNS_RESULT_2"
},
{
@@ -64,7 +63,6 @@
"dns_qr": 0,
"dns_opcode": 0,
"dns_rd": 0,
"rr": {},
"name": "DNS_RESULT_4"
},
{
@@ -121,7 +119,6 @@
"dns_qr": 0,
"dns_opcode": 0,
"dns_rd": 0,
"rr": {},
"name": "DNS_RESULT_7"
},
{

View File

@@ -7,7 +7,6 @@
"dns_qr": 0,
"dns_opcode": 0,
"dns_rd": 1,
"rr": {},
"name": "DNS_RESULT_1"
}
]

View File

@@ -103,16 +103,7 @@ extern "C" int commit_test_result_json(cJSON *node, const char *name)
void perf_resource_record_decode(struct dns_message *dns_msg)
{
TIME_START();
uint16_t n_answer_rr=0;
uint16_t n_additional_rr=0;
uint16_t n_authority_rr=0;
struct dns_resource_record *answer_rr=NULL;
struct dns_resource_record *additional_rr=NULL;
struct dns_resource_record *authority_rr=NULL;
dns_message_answer_resource_record_get0(dns_msg, &answer_rr, &n_answer_rr);
dns_message_authority_resource_record_get0(dns_msg, &authority_rr, &n_authority_rr);
dns_message_additional_resource_record_get0(dns_msg, &additional_rr, &n_additional_rr);
TIME_DIFF();
//fieldstat_easy_histogram_record(main_env->fse.handle, tid, main_env->fse.id[PERF_TAG_QUESTION], &(main_env->fse.tag[PERF_TAG_QUESTION]), 1, time_diff_ns)
}

View File

@@ -85,46 +85,13 @@ void dns_decoder_test_message_cb(struct session *ss, int topic_id, const void *m
cJSON_AddNumberToObject(real_result, "dns_rd", (double)(flag->rd));
}
uint16_t n_answer_rr=0;
struct dns_resource_record *answer_rr=NULL;
dns_message_answer_resource_record_get0(dns_msg, &answer_rr, &n_answer_rr);
uint16_t n_authority_rr=0;
struct dns_resource_record *authority_rr=NULL;
dns_message_authority_resource_record_get0(dns_msg, &authority_rr, &n_authority_rr);
uint16_t n_additional_rr=0;
struct dns_resource_record *additional_rr=NULL;
dns_message_additional_resource_record_get0(dns_msg, &additional_rr, &n_additional_rr);
const char *answer=dns_resource_record_json_exporter(answer_rr, n_answer_rr);
const char *authority=dns_resource_record_json_exporter(authority_rr, n_authority_rr);
const char *additional=dns_resource_record_json_exporter(additional_rr, n_additional_rr);
cJSON *rr_array=cJSON_CreateObject();
if(answer!=NULL)
const char *resource_record_str=dns_message_resource_record_json_exporter(dns_msg);
if(resource_record_str!=NULL)
{
cJSON *rr_object=cJSON_Parse(answer);
cJSON_AddItemToObject(rr_array, "answer", rr_object);
free((void *)answer);
cJSON *rr_array=cJSON_Parse(resource_record_str);
cJSON_AddItemToObject(real_result, "rr", rr_array);
}
if(authority!=NULL)
{
cJSON *rr_object=cJSON_Parse(authority);
cJSON_AddItemToObject(rr_array, "authority", rr_object);
free((void *)authority);
}
if(additional!=NULL)
{
cJSON *rr_object=cJSON_Parse(additional);
cJSON_AddItemToObject(rr_array, "additional", rr_object);
free((void *)additional);
}
cJSON_AddItemToObject(real_result, "rr", rr_array);
if(plugin_env->write_result_enable==1)
{
char *real_result_str=cJSON_Print(real_result);