php - 测试函数每次使用相同的输入生成不同的结果
问题描述
我有以下测试功能:
class LinearRegressionTest extends TestCase {
public function testR(): void {
self::assertEquals( 10, LinearRegression::r() );
}
}
和相应的功能,我使用库 php-r (https://github.com/kachkaev/php-r):
use Kachkaev\PHPR\RCore;
use Kachkaev\PHPR\Engine\CommandLineREngine;
class LinearRegression {
public static function r(): string {
$r = new RCore( new CommandLineREngine( '/usr/lib/R/bin/R' ) );
$rProcess = $r->createInteractiveProcess();
$rProcess->start();
$rProcess->write( 'x <- 5' );
$rProcess->write( 'y <- 5' );
$rProcess->write( 'y + x' );
return $rProcess->getAllResult();
}
}
我真的很困惑:当我运行测试时,有时我得到正确的结果(测试通过),但有时测试没有完成(比如一些 while cyklus??)。
我的问题是为什么相同的代码会产生不同的结果?我该如何解决?
解决方案
推荐阅读
- node.js - 建立关系时出现猫鼬验证错误
- python - Python datetime 到日期和时间
- google-bigquery - BigQuery ASOF 加入用例
- python - Python sounddevice 在树莓派上不发出声音
- jquery - 简单的 Jquery 不适用于 Select2 元素
- python - 在列表中拆分基于 numpy 数组的列值
- javascript - 如何循环此 Google Apps 脚本功能?
- python - 如何将熊猫系列索引日期转换为 DatetimeIndex?
- git - 将多个额外的deps包放入堆栈
- identityserver4 - 手动创建和验证 JWT 令牌