背景:最近遇到一个问题,我启动程序测试自己写的UT,发现没问题;但是用另外一个程序启动测试就会报错。
分析:后来发现是自己写的UT用例中存在fopen一个文件,而我填的的是相对路径。问题就出在这里了,因为对于Linux系统而言,此时所处的位置是启动程序的位置,也就是可执行文件的路径。但是每个可执行文件的位置肯定不同,如果以某一个可执行文件的位置作为相对路径,肯定错误。
解决办法:获取文件的绝对路径,然后让你的代码去读取绝对路径才不会报错。
背景:最近遇到一个问题,我启动程序测试自己写的UT,发现没问题;但是用另外一个程序启动测试就会报错。
分析:后来发现是自己写的UT用例中存在fopen一个文件,而我填的的是相对路径。问题就出在这里了,因为对于Linux系统而言,此时所处的位置是启动程序的位置,也就是可执行文件的路径。但是每个可执行文件的位置肯定不同,如果以某一个可执行文件的位置作为相对路径,肯定错误。
解决办法:获取文件的绝对路径,然后让你的代码去读取绝对路径才不会报错。