<div dir="ltr">Hi guys,<div><br></div><div>I've been doing research about testing stuff and trying to discover more about strace myself. As you guys mentioned on the website, branches of parsers are way far from being covered so I think I'd better start with coding for branches coverage. More specifically, I've got some basic knowledge about the metric of branch coverage and besides, I noticed that there is an option "--enable-code-coverage" which is based on gcov and lcov and shows line/function/branch coverage in number/percent.</div><div>I think I could use this coverage report as my guidance and strart to code for those branches which are not yet covered. For example, fcntl parser has a lot of options and flags in the switch...case segment that need coverage and of course other parsers may be not like it, e.g. more if else condition. To become more familiar with these syscalls I think manual pages will help a lot. I can refer to the categories and usages in the manual considering there are part of syscalls I don't know about.</div><div>Concerns: Dmitry said the kernel the test suite is running is relatively old but the branch coverage report generated by gcov is based on the kernel on my own desktop/laptop so there must be some differences. Should I just compile and install the older kernel and use some other platforms to figure it out? I don't know much about the discrepancies among platforms as well as versions of kernels (which I'm still learning). I have to say I couldn't come out with any excellent ideas to significantly enhance the test suite for now so what do you think if I start with the more basic stuff mentioned above? You must've noticed by reviewing the patches I sent that I lack experience so if you guys have any extra suggestions, I'd be appreciated!</div><div><br></div><div>Thanks,</div><div>Zhibin Li</div></div>