perl - "Devel::Cover: Can' t 打开 test.pl 用于 MD5 摘要 : No such file or directory"after switching user

标签 perl code-coverage

我正在使用 Devel::Cover 来收集我在 Linux 上的 perl 覆盖率,但是当我尝试切换用户时遇到了问题。以下是重现步骤:

  1. 有 2 个用户:user1 和 user2 并设置 $PERL5OPT=-MDevel::Cover=-db,[覆盖文件夹路径]
  2. 以 user1 身份登录并将 test.pl 放在 /home/user1/
  3. 运行 perl/home/user1/test.pl
  4. 通过运行 "sudo su - user2" 切换到 user2

错误消息 “Devel::Cover:无法打开 MD5 摘要的 test.pl:没有这样的文件或目录”在用户更改后立即出现

我尝试通过在 PERL5OPT 中设置参数来使其工作,例如:

export PERL5OPT=-MDevel::Cover=-db,[path to coverage folder],+inc,/var/home,/home

但是没有用,有人可以帮忙吗?

最佳答案

好吧,最后我自己想出了一个解决方案 - 只包含我想使用“-dir”收集覆盖率信息的文件夹:

export PERL5OPT=-MDevel::Cover=-db,[path to coverage folder],-dir,[Paths of perl scripts to cover]

关于perl - "Devel::Cover: Can' t 打开 test.pl 用于 MD5 摘要 : No such file or directory"after switching user,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9075167/

相关文章:

linux - 使用 PID 在 perl 中拖尾一个文件

java - 如何获得 Maven 多模块项目的完整代码覆盖率

java - 从代码覆盖范围中排除生成的源,而不影响整体代码覆盖范围

c# - 当我运行覆盖率测试时,我得到了测试方法代码的覆盖率,而不是我想要测试的方法的覆盖率

java - 类声明的 Sonar 分支覆盖

git - 增加 Github Enterprise 中 protected `master` 分支的代码覆盖率门

perl - 为什么我无法使用 XML::LibXML 中的 XPath 访问 XML 文件内的元素?

xml - 如何从 XML::Simple::XMLout 压缩 XML?

Perl 错误地提示 Name "main::FILE"只使用了一次

python - Linux shell : Base64 Decode with removing line breaks