PHP使用内存使用信息执行单元测试



我有一个关于PHP和Java编程的问题。我将开发一个web应用程序来进行单元测试。PHP是我将用于web的语言,并将执行exec()函数。当我读取时,函数返回执行的输出,我确实需要它。但这还不够,我还想如果我能知道在执行过程中使用了多少内存。web将在Linux本地操作系统(在Ubuntu中引用)的Apache web服务器上运行。

这是第二个例子:如果有一个Java源代码,其中包含一个程序,在执行过程中需要用户输入,我如何通过一个web服务器来执行它,同时传递所有可能作为用户输入的行?

下一个问题是,exec()函数只接受行中的参数。如果我想

所以,如果有任何想法如何做的事情?

/usr/bin/time程序(在time(1)中记录)可以返回执行期间使用的内存量:

$ /usr/bin/time echo hello
hello
0.00user 0.00system 0:00.00elapsed ?%CPU (0avgtext+0avgdata 2512maxresident)k
0inputs+0outputs (0major+205minor)pagefaults 0swaps

您可以看到echo(1)程序需要2.5 mb的内存并且运行得非常快。更大的程序会更令人印象深刻:

$ /usr/bin/time jacksum --help
Unknown argument. Use -h for help. Exit.
Command exited with non-zero status 2
0.08user 0.03system 0:00.87elapsed 12%CPU (0avgtext+0avgdata 57456maxresident)k
25608inputs+64outputs (92major+4072minor)pagefaults 0swaps

jacksum是一个基于java的程序,所以它花了57mb来告诉我我搞砸了命令行参数。这才像话。

您可能还会发现BSD进程帐户系统值得使用。参考lastcomm(1)sa(8)dump-acct(8)了解更多信息。

最新更新